如何理解python中的None、[]、[1]?
我现在被块1、2和3的输出搞糊涂了,它们之间的关系是什么? 这就是所谓的 如果有如何理解python中的None、[]、[1]?,python,Python,我现在被块1、2和3的输出搞糊涂了,它们之间的关系是什么? 这就是所谓的 如果有A和B,并且A被计算为某个假等价物,则表达式将简单地返回A(该值为假或等效值)并跳过B。但是如果A是真等价的,我们返回B的值,因为A对于整个表达式的值不再重要 类似地,对于或的情况,如果我们有A或B,并且A是真正等效的,则将跳过B,并为表达式返回A。或者,如果A为假等价,则返回B。这被调用 如果有A和B,并且A被计算为某个假等价物,则表达式将简单地返回A(该值为假或等效值)并跳过B。但是如果A是真等价的,我们返回B的
A和B
,并且A
被计算为某个假等价物,则表达式将简单地返回A
(该值为假或等效值)并跳过B
。但是如果A
是真等价的,我们返回B
的值,因为A
对于整个表达式的值不再重要
类似地,对于或
的情况,如果我们有A或B
,并且A
是真正等效的,则将跳过B
,并为表达式返回A
。或者,如果A
为假等价,则返回B
。这被调用
如果有A和B
,并且A
被计算为某个假等价物,则表达式将简单地返回A
(该值为假或等效值)并跳过B
。但是如果A
是真等价的,我们返回B
的值,因为A
对于整个表达式的值不再重要
类似地,对于
或
的情况,如果我们有A或B
,并且A
是真正等效的,则将跳过B
,并为表达式返回A
。或者,如果A
为假等价,则返回B
。例如:您可以在Python控制台中执行此操作
>>>a = None
>>>b = []
>>>c = [1]
>>>type(a)
<class 'NoneType'>
>>>type(b)
<class 'list'>
>>>type(c)
<class 'list'>
您也可以这样做:
>>>b.append(a)
>>>b
>>>[None]
>>>len(b)
>>>1 #(b have one element None)
例如:您可以在Python控制台中执行此操作
>>>a = None
>>>b = []
>>>c = [1]
>>>type(a)
<class 'NoneType'>
>>>type(b)
<class 'list'>
>>>type(c)
<class 'list'>
您也可以这样做:
>>>b.append(a)
>>>b
>>>[None]
>>>len(b)
>>>1 #(b have one element None)
从现在起,我将更新所有这些错误的等效代码 结论: 这是2019年3月24日星期日
不是假等价物,因为NaN
给出了print(float('NaN')和False)
False
(2019年3月19日,星期二。)
不是假等价物,因为-1
是打印(-1和False)
False
为假等效,因为非1、[]、无、0
分别为打印(非-1) 打印([]和False) 打印(无和错误) 打印(0和False)
假、[]、无、0
不是假等价物,因为NaN
给出了print(float('NaN')和False)
False
(2019年3月19日,星期二。)
不是假等价物,因为-1
是打印(-1和False)
False
为假等效,因为非1、[]、无、0
分别为打印(非-1) 打印([]和False) 打印(无和错误) 打印(0和False)
假、[]、无、0
[]
、0
、None
、负数,如-1
、-2
?空容器(列表、字典、字符串等)、数字零和None
都是假的。非空容器和非零数字为真。在数字中,False仅等效于0,因为这是它的值,1是true的值,因此False+2之类的值将返回2@JohnGordon和@adrtam。谢谢你所有有用的回答,我现在感觉好多了。通过几行代码,例如print-1和False
输出False
,print[]和False
输出[]
,print None和False
输出None
和print 0和False
输出0
,然后我知道什么是假等价物,以及如何判断一个元素是否是假等价物,正如上面@JohnGordon评论的那样。@gery你可以将bool
应用到某个东西上,看看它的计算结果是True
还是False
,例如bool(None)
什么是假等价物,包括[]
,0
,None
,负数如-1
、-2
、空容器(列表、字典、字符串等)、数字零和None
均为假。非空容器和非零数字为真。在数字中,False仅等效于0,因为这是它的值,1是true的值,因此False+2之类的值将返回2@JohnGordon和@adrtam。谢谢你所有有用的回答,我现在感觉好多了。通过几行代码,例如print-1和False
输出False
,print[]和False
输出[]
,print None和False
输出None
和print 0和False
输出0
,然后我知道什么是假等价物,以及如何判断一个元素是否是假等价物,正如上面@JohnGordon所评论的那样。@gery您可以将bool
应用到某个东西上,看看它的计算结果是True
还是False
,例如bool(None)
谢谢。你真是太好了,谢谢。你真是太好了。