ループ内に一連のバインディングを作成するための次のコードがあります。
from Tkinter import *
keys = {0:'m', 1:'n', 2:'o'}
def SomeFunc(event=None,number=11):
print keys[number], number
root = Tk()
field = Canvas(root, height = 200, width = 200, bg = "gray")
for i in range(2):
root.bind("<KeyPress-%c>" % keys[i],lambda ev:SomeFunc(ev,i))
field.pack()
root.mainloop()
私の問題は、「m」または「n」を押すSomeFunc
と、引数として変数「i」を使用して関数が呼び出されることです。「m」を押すと引数として0(「bind」を使用した場合は「i」の数値)、「n」を押すと1で呼び出されるようにしたいと思います。これはできますか?