names ['name''age''pay''job'values ['sue jones' 'hdw'list(zip(namesvalues)[('name''sue jones')('age' )('pay' )('job''hdw')sue dict(zip(namesvalues)sue {'job''hdw''pay' 'age' 'name''sue jones'we can even make dictionaries from sequence of key values and an optional starting value for all the keys (handy to initialize an empty dictionary)fields ('name''age''job''pay'record dict fromkeys(fields'?'record {'job''?''pay''?''age''?''name''?'lists of dictionaries regardless of how we code themwe still need to collect our dictionary-based records into databasea list does the trick againas long as we don' require access by key at the top levelbob {'pay' 'job''dev''age' 'name''bob smith'sue {'job''hdw''pay' 'age' 'name''sue jones'people [bobsuefor person in peopleprint(person['name']person['pay']sep=''reference in list all namepay bob smith sue jones for person in peopleif person['name'='sue jones'print(person['pay']fetch sue' pay iteration tools work just as well herebut we use keys rather than obscure positions (in database termsthe list comprehension and map in the following code project the database on the "namefield column)names [person['name'for person in peoplenames ['bob smith''sue jones'collect names list(map((lambda xx['name'])people)['bob smith''sue jones'dittogenerate sum(person['pay'for person in people sum all pay sneak preview