>>> params = {'server':'baidu', 'database':'mysql', 'pwd':'admin', 'user':'bazig'}
>>>
>>> params.keys()
dict_keys(['server', 'user', 'database', 'pwd'])
>>>
>>> params.values()
dict_values(['baidu', 'bazig', 'mysql', 'admin'])
>>>
>>> params.items()
dict_items([('server', 'baidu'), ('user', 'bazig'), ('database', 'mysql'), ('pwd', 'admin')])
>>>
>>>
>>> [v for v, k in params.items()]
['server', 'user', 'database', 'pwd']
>>>
>>> [v for k, v in params.items()]
['baidu', 'bazig', 'mysql', 'admin']
>>>
>>> [k for k, v in params.items()]
['server', 'user', 'database', 'pwd']
>>>
>>> [k for v, k in params.items()]
['baidu', 'bazig', 'mysql', 'admin']
>>>
以上是我做的实验结果,有几点疑问:
1、[v for v, k in params.items()]这个应该怎么理解呢,展开来应该是怎样的?
2、为什么[v for v, k in params.items()]和[k for k, v in params.items()]执行的结果是一样的,怎么理解?
3、上面是定义是属于列表还是字典,在哪里可以找到有比较详细的文档资料查看?
v for v, k in params.items()时v是key,k是value
v for k, v in params.items()时v是value,k是key
你注意k,v的位置就好
不过一般都写for k,v in params.items(),k,v正好对应key,value就不容易记错