将
dict对象转换为列表时,它仅使用键。
但是,如果用方括号将其包围,则所有内容都将保持不变,只会使其成为
dicts的列表,其中仅包含一项。
>>> obj = {1: 2, 3: 4, 5: 6, 7: 8}>>> list(obj)[1, 3, 5, 7]>>> [obj][{1: 2, 3: 4, 5: 6, 7: 8}]>>>这是因为,当您使用循环
for遍历时,它也只使用了键:
>>> for k in obj:... print k... 1357>>>
但是,如果要获取键 和 值,请使用
.items():
>>> list(obj.items())[(1, 2), (3, 4), (5, 6), (7, 8)]>>>
使用
for循环:
>>> for k, v in obj.items():... print k, v... 1 23 45 67 8>>>
但是,当您输入时
list.__doc__,它会为您提供
[].__doc__:
>>> print list.__doc__list() -> new listlist(sequence) -> new list initialized from sequence's items>>> >>> print [].__doc__list() -> new listlist(sequence) -> new list initialized from sequence's items>>>
有点误导:)


![在Python中使用[]和list()之间的区别 在Python中使用[]和list()之间的区别](http://www.mshxw.com/aiimages/31/370607.png)
