python一道关于字典的题

题目

建立字典。给定两个长度相同的列表,比如说,列表[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'}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值