簡體   English   中英

列表中的相同對象

[英]Identical objects in list

是否可以將相同的對象檢測為不同的變量,例如 object1=(1,2,3) 和 object2= (1,2,3)。

list = []

如果我現在將對象 1 與對象 2 一起放在列表中,則列表變為:

list.append(object1)
list.append(object1)
print(list)
list = [(1,2,3),(1,2,3)]

我怎樣才能讓python決定列表中的第一個元素是否是object1? 這是我必須為我的學校項目做的事情。

計算機只做你告訴它做的事情。 所以如果你追加兩次,它會聽。 如果您希望它在某個條件下執行此操作,則需要使用 if 語句並將列表中的值與您嘗試添加的值進行比較。 為了使這更容易,我會將它放在一個函數中,以便您可以輕松調用此邏輯

在您的情況下,我假設您只想添加不存在的對象:

list = []
def addToList(elem):
    global list # allows the function to modify this variable that would be normally out of scope
    if elem not in list:
        list.append(elem)

object1 = [1,2,3]
addToList(object1)
addToList(object1)
print(list)

你可以投射到設置然后回到列表:

my_list = [(1,2,3),(1,2,3)]
print(list(set(my_list)))
# [(1, 2, 3)]

或者您可以先檢查您的對象是否已在列表中:

if object1 not in my_list:
    my_list.append(object1)

我找到了。 您可以使用is函數執行此操作。

Block1 is Block2
list[0] is list[1]

回復:假的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM