0
爲什麼這兩個評估不同?爲什麼空字符串和None的評估方式不同?
In [34]: a = ''
In [35]: if a or a >=0:
print 'y'
....:
y
In [36]: a = None
In [37]: if a or a >=0:
print 'y'
....:
我以爲一個空字符串也評估爲無(我知道他們是不一樣的)?或者它只是虛僞,因此評估爲0(如果像if a: do something
那樣進行測試,則評估爲無)?
我錯過了,你會感到困惑。在第一個例子中?由於'> = 0'部分,它打印'y'。 – keyser
我不期待第一個例子打印任何東西。 – LarsVegas
這是因爲字符串vs int比較的工作原理。如果a部分沒有被踢入,就像你說的那樣,一個空字符串和'None'不是一回事。 – keyser