Python 列表中的相同对象

Python 列表中的相同对象,python,list,append,Python,List,Append,是否可以将相同的对象检测为不同的变量,例如object1=(1,2,3)和object2=(1,2,3) 如果我现在将对象1与对象2放在列表中,列表将变为: list.append(object1) list.append(object1) print(list) list = [(1,2,3),(1,2,3)] 如何让python决定列表中的第一个元素是否为object1? 这是我必须为我的学校项目做的事情。计算机只做你让它做的事情。因此,如果您附加两次某个内容,它将侦听。如果希望它在某个条

是否可以将相同的对象检测为不同的变量,例如object1=(1,2,3)和object2=(1,2,3)

如果我现在将对象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]
答复:错

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