题目
建立字典。给定两个长度相同的列表,比如说,列表[1, 2, 3,...]
和['abc', 'def', 'ghi',...]
用这两个列表里的所有数据组成一个字典,像这样:{1: 'abc', 2: 'def', 3: 'ghi',...}
在这里要用到
dict.setdefault(key,[,default])
这个函数如果key在dict内部会返回key所对应的value,key不在dict内部会在dict内插入一个键值对,键为key值为默认的None。
def InsertDict(D, char1, char2):
#传入dict,char1为键,char2为值#
D.setdefault(char1)
#在这里先创建一个键为char1值为None的键值对#
D[char1] = char2
#在这里把默认值None换成char2#
D = {}
L = input('请输入将要当作字典中值的列表: ')
L1 = list(L)
L2 = []
for i in range(len(L1)):
n = input('对于键为%d的键值对请输入与键对应的字符串: '%int(L[i]))
L2.append(n)
for i in range(len(L1)):
char1 = str(L1[i])
char2 = str(L2[i])
InsertDict(D, char1, char2)
for eachkey in sorted(D):
print('key: '+eachkey+' '+'value: '+D[eachkey])
print(D)
请输入将要当作字典中值的列表: 1234
对于键为1的键值对请输入与键对应的字符串: a
对于键为2的键值对请输入与键对应的字符串: b
对于键为3的键值对请输入与键对应的字符串: c
对于键为4的键值对请输入与键对应的字符串: d
key: 1 value: a
key: 2 value: b
key: 3 value: c
key: 4 value: d
{'4': 'd', '2': 'b', '1': 'a', '3': 'c'}