Python Tkinter 多行输入为列表中的整数

Python Tkinter multiple line input as integer in list

我在从 Tkinter 文本框中读取多行坐标(如 x、y)时遇到问题。 用户输入将是这样的:

41,3
21,12
68,10
etc.

每条线代表一个 x,y 坐标。 X 和 Y 由 , 分隔。 我需要从文本框中读取这个坐标并以数组形式处理它。像这样:

[[41,3],[21,12],[68,10]

我目前拥有的:

from Tkinter import *


def get_Data():
   text_from_Box = Text_Entry.get("1.0", 'end-1c').split("\n")
   print text_from_Box


master = Tk()

Label(master, text = "Enter coordinates here:").grid(row = 0, sticky = W)

Text_Entry = Text(master, height = 30, width = 30)
Text_Entry.grid(row = 1, column = 0)

Button(master, text = 'Start Calculation', command = get_Data).grid(row = 2,      column = 0, sticky = W)

mainloop()

您必须在 ',' 处再次 split 并转换为 int(或 float):

def get_Data():
   text_from_Box = Text_Entry.get("1.0", 'end-1c').split("\n")
   numbers = [[int(x) for x in pair.split(",")] for pair in text_from_Box]
   print numbers