我很奇怪,爲什麼逗號符號 「」 返回true:爲什麼Python中的逗號符號返回true?
mutant = toolbox.clone(ind1)
ind2, = tools.mutGaussian(mutant, mu=0.0, sigma=0.2, indpb=0.2)
print (ind2 is mutant)
>>>True
但是當我刪除逗號符號:
ind2 = tools.mutGaussian(mutant, mu=0.0, sigma=0.2, indpb=0.2)
print (ind2 is mutant)
>>>False
返回false。 如果有人能解釋這背後的機制,那將是非常感謝。
您正在將包含一個元素的迭代器分配給* tuple *名稱。 –
換句話說,在你的第二個版本中,'ind2 [0]是突變體'將起作用。 –
只需鍵入'ind2'即可準確查看變量在每種情況下的含義。你會看到它是兩個相似但不同的值。 –