[英]How to use write a loop for list append
from Tkinter import *
import csv
root = Tk()
def click(event):
global x,y
x, y= event.x,event.y
frame = Frame(root, width=100, height=100)
frame.bind("<Button-1>", click)
frame.pack()
root.mainloop()
row=[]
col=[]
row.append(x)
col.append(y)
請! 如何編寫循環,以便兩個列表可以包含我單擊的所有x和y。
這里沒有理由使用顯式循環, root.mainloop
已經提供了一個顯式循環,該循環在每次單擊事件時為您調用處理程序。 寫作:
from Tkinter import *
root = Tk()
row = []
col = []
def click(event):
row.append(event.x)
col.append(event.y)
frame = Frame(root, width=100, height=100)
frame.bind("<Button-1>", click)
frame.pack()
root.mainloop()
將離開row
和col
填充了所有的x和y坐標從每點擊一次root.mainloop
完成。 也沒有必要將x
和y
全局值:它們的全局值將始終保留上次click
調用中的值(或者,如果您從未單擊過,則將產生未定義的變量錯誤)。
實際上,您只需將x和y追加一次。 您可以使點擊事件發生追加-無需循環!
from tkinter import *
import csv
root = Tk()
coords = []
def click(event):
global x,y
x, y= event.x,event.y
coords.append([x, y])
print("Clicked at: ", x, y)
frame = Frame(root, width=100, height=100)
frame.bind("<Button-1>", click)
frame.pack()
root.mainloop()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.