【问题标题】:how to get the most recent variable added to a list in Python [duplicate]如何在Python中将最新的变量添加到列表中[重复]
【发布时间】:2015-12-19 23:12:02
【问题描述】:

我在 python 中创建了一个名为“worldPos”的列表,它不断地将鼠标光标的位置作为 x 和 y 坐标添加到列表中。如何获取添加到列表中的最新 x 和 y 坐标?

from Tkinter import *

root = Tk()
root.geometry('800x800')

cnv = Canvas(root, width = 800, height = 800)
cnv.pack()
worldPos = []

def motion(event):
    x, y = event.x, event.y

    worldPos.append((x,y))

root.bind('<Motion>', motion)

mainloop()

【问题讨论】:

  • lastx, lasty = worldPos[-1]
  • 只是巧合。他可能决定在前面添加元素。所以应该是worldPos[0]

标签: python tkinter


【解决方案1】:

.append() 方法添加到列表的最后。

此位置可以通过list_name[-1] 寻址。其中减号表示从列表后面开始索引。

但是,您将两个项目添加为一个元组,因此您需要拉取:

x,y = worldPos[-1]

如果您改为将项目添加到列表的前面

worldPos[0:0] = (x,y)

然后您将从列表的前面开始索引

x,y = worldPos[0]

祝你好运!

附言如果它回答了您的问题,请务必接受它作为答案。

【讨论】:

  • 厚脸皮...晚了 4.5 分钟 :)
  • 是的。至少我添加了一些解释和上下文。不过,我承认,低垂的果实。
  • 点赞!这就是生活:)
  • 那么,如果你想有所作为,你可以添加解决方案,以防他想在列表前面添加事件
猜你喜欢
  • 2018-11-07
  • 2021-09-11
  • 2019-10-11
  • 1970-01-01
  • 2015-06-03
  • 2022-11-16
  • 2011-01-23
  • 2016-06-07
  • 1970-01-01
相关资源
最近更新 更多