python:比较元组列表
只是想知道以下几点:python:比较元组列表,python,list,tuples,Python,List,Tuples,只是想知道以下几点: print [()] == list(tuple()) # prints False 第一个是包含空元组的列表,第二个是空列表 为什么这段代码打印False而不是True(在python 2和3中的结果相同) 提前谢谢 您将带有一个元素(空元组)的列表与空列表进行了比较列表(tuple())不会做您认为它会做的事情 这是因为list(object)不会生成一个以该对象为元素的列表list()将必须可编辑的对象转换为列表。它从对象中复制元素: >>> di
print [()] == list(tuple()) # prints False
第一个是包含空元组的列表,第二个是空列表
为什么这段代码打印False而不是True(在python 2和3中的结果相同)
提前谢谢 您将带有一个元素(空元组)的列表与空列表进行了比较<代码>列表(tuple())不会做您认为它会做的事情 这是因为
list(object)
不会生成一个以该对象为元素的列表list()
将必须可编辑的对象转换为列表。它从对象中复制元素:
>>> dictionary = {'foo': 'bar'}
>>> list(dictionary) # iteration over a dictionary produces keys
['foo']
您给它一个空元组,因此结果是一个空列表:
>>> empty = ()
>>> list(empty)
[]
顺便说一下,
tuple()
也做同样的事情。没有参数的list()
和tuple()
都会生成空对象。因为它们不会生成相同的结果?第一个是包含1个元素的列表,第二个是包含零个元素的列表<代码>列表()。元组是一个可数,您将空元组转换为列表。明白了,谢谢!