繁体   English   中英

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM