我正在发现python中数据类型之间的差异。我有点困惑为什么demo2的类型给出列表而不是元组。谁能告诉我为什么它是打印类型列表而不是元组?
代码
demo1 = ()
print ("demo1 {}".format(type(demo1)))
demo2 = ([])
print ("demo2 {}".format(type(demo2)))
demo3 = ([],[])
print ("demo3 {}".format(type(demo3)))
输出
demo1 <type 'tuple'>
demo2 <type 'list'>
demo3 <type 'tuple'>
答案 0 :(得分:2)
要创建一个空的元组,请使用tuple()
。它会以()
的形式打印,但这不是您创建空元组的方式。至少,一个元组必须包含一个项目。因此,您需要将其创建为([],)
。
您的代码([])
与[]
相同,在这种情况下,括号是延续字符`,而不是空元组。
括号,方括号或花括号中的表达式可以是 在不使用反斜杠的情况下划分了多个物理行。
有关更多详细信息,请参见the documentation on lexical analysis。
您还可以在口译员处对此进行验证:
>>> ([]) == []
True
答案 1 :(得分:1)