1. fromkeys() 函数
a = ['a', 'b']
b = [1, 2]
c = dict.fromkeys(a, b)
print(c)
a.append('c')
b.append(3)
print(c)
# {'a': [1, 2], 'b': [1, 2]}
# {'a': [1, 2, 3], 'b': [1, 2, 3]}
用 fromkeys() 函数生成字典,一般需要传入两个参数,第二个参数可以缺失,默认为 None。
其中第一个参数必须是可迭代的,以迭代出的每一项作为字典的键;
第二个参数可为任意类型,作为字典的值。
坑来了:
如果第二个参数是可变数据类型,比如列表,当数据发生改变时(即使在生成操作之后),字典也会相应发生改变;
然而第一个参数就不存在这种情况。