在python中if==ok时创建列表

在python中if==ok时创建列表,python,list,if-statement,Python,List,If Statement,如果状态为“选择”,但它会用最后一个值覆盖列表中的值,则我想在列表中添加值 如果状态==“选择”: 对象\名称=输入(“输入跟踪对象的名称:”) Ax=x-w/2 Ay=y-h/2 p1=(对象名称,Ax,Ay) 列表=[] 列表。追加(p1) 打印(列表) 打印(len(列表)) 每次输入if范围时,您都在创建一个列表。在之前创建它,使其不会覆盖其他更改 list=[] ... 如果状态==“选择”: 对象\名称=输入(“输入跟踪对象的名称:”) Ax=x-w/2 Ay=y-h/2 p1=(对

如果
状态为
“选择”
,但它会用最后一个值覆盖
列表中的值,则我想在
列表中添加值

如果状态==“选择”:
对象\名称=输入(“输入跟踪对象的名称:”)
Ax=x-w/2
Ay=y-h/2
p1=(对象名称,Ax,Ay)
列表=[]
列表。追加(p1)
打印(列表)
打印(len(列表))

每次输入
if
范围时,您都在创建一个列表。在之前创建它,使其不会覆盖其他更改

list=[]
...
如果状态==“选择”:
对象\名称=输入(“输入跟踪对象的名称:”)
Ax=x-w/2
Ay=y-h/2
p1=(对象名称,Ax,Ay)
列表。追加(p1)
打印(列表)
打印(len(列表))

if status=='select':(x,y,w,h)=[int(v)for v in box]object_name=input(“为跟踪对象输入名称:”)Ax=x-w/2 Ay=y-h/2 p1=(object_name,Ax,Ay)list=[]list.追加(p1)打印(list)打印(len(list))
list=[]
-这将覆盖整个list@h4z3从技术上讲,它不会“覆盖”任何内容,它只是将名称
list
重新绑定到一个新列表。如果您有另一个对原始列表的引用,则此引用不受影响。@TiaNomena unrelated(参见samthegolden的回答),但您不应使用内置类型名称作为变量名-它会隐藏内置类型,并经常导致代码后面出现意外错误。谢谢。我还有一个问题。若我想比较列表中第一个值中的Ax值和列表中第二个值中的Ax值。如何继续?您可以使用索引
如果Ax==list[0]
为第一个值,如果Ax==list[1]
为第二个值。@TiaNomena如果您还有其他问题,请在其他问题中发布。谢谢