我是 Python 新手(以 Java 为基础)。我阅读了Dive Into Python书籍,在第 3 章中找到了关于Multi-Variable Assignment
. 也许你们中的一些人可以帮助我理解下面这段代码中发生的事情:
>>> params = {1:'a', 2:'b', 3:'c'}
>>> params.items() # To display list of tuples of the form (key, value).
[(1, 'a'), (2, 'b'), (3, 'c')]
>>> [a for b, a in params.items()] #1
['a', 'b', 'c']
>>> [a for a, a in params.items()] #2
['a', 'b', 'c']
>>> [a for a, b in params.items()] #3
[ 1 , 2 , 3 ]
>>> [a for b, b in params.items()] #4
[ 3 , 3 , 3 ]
到目前为止我所理解的是#1
and#2
具有相同的输出,显示元组的值。#3
显示元组的键,#4
只显示元组列表中的最后一个键。
我不明白上述每种情况下变量a
和变量的用法:b
a for b, a ...
-> 显示值a for a, a ...
-> 显示值a for a, b ...
-> 显示键a for b, b ...
-> 显示最后一个键
谁能详细说明上述每种情况的循环流程?