我有一個簡單的代碼是這樣的Python:Python命令正在工作,但爲什麼?
a = [1,2,3]
b = [2,4,6]
def union(a,b):
pos = 0
while pos < len(b):
n = b[pos]
if n in a is not 'True':
a = a
else:
a.append(n)
pos = pos +1
return a
print union(a,b)
正如你所看到的,第一個IF語句是沒有意義的。但是,如果我這樣編碼:
if n in a is 'True':
a.append(n)
它不起作用。第一個代碼段更改a = [1,2,4,6] - 僅添加列表'b'中不在列表'a'中的數字。如果按照建議將「IF」片段更改爲「is」True,則不起作用。
雖然這個函數做了我打算做的事情,但我覺得它並不乾淨,我不知道爲什麼「如果n在a是'真':」不會等同於其他部分「if n中的a不是'真':「功能。
有人能幫我理解嗎?