[英]Convert string input into integer list in just one line of code in python
[英]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.