我对zip功能有所了解,但是格式()区域的荣誉在下面的代码中有什么作用?
有人可以为我打破这一切吗?
print('Result: {}'.format({a = b for a,b in zip(l1, l2)}))
答案 0 :(得分:1)
将=
更改为:
,以便:
l1 = [1, 2, 3, 4]
l2 = [5, 6, 7, 8]
print('Result: {}'.format({a : b for a,b in zip(l1, l2)}))
这会打印字典:
{1: 5, 2: 6, 3: 7, 4: 8}
{<other stuff>}
内的format ()
称为词典理解,请参阅:
http://www.bogotobogo.com/python/python_dictionary_comprehension_with_zip_from_list.php
通过遍历压缩列表连续生成一系列元组a, b
,并从每个元组a, b
生成一个键值对a: b
,a
是密钥和b
是值。
答案 1 :(得分:0)
您的语法错误,首先打印为大写,将其设为小写,'='
为'=='
,如果是'=='
则为:
这是一个让您了解实际代码正在做什么的示例:
{a==b for a,b in zip(l1, l2)}
正在压缩两个列表并检查元组中的第一个元素是否等于元组中的第二个元素:
l1=[1,2,3,4,5]
l2=[2,3,3,4,6]
print({a==b for a,b in zip(l1, l2)})
输出:
{False, True}