python中如何输入多行文字_如何从Python中的多行Tkinter文本框中读取输入(逐行)?...

通过使用Python中的过程编程范例,我编写了一个程序,逐行读取文件(比如file.txt)的输入并打印出来。以下是示例:

脚本:import fileinput

for line in fileinput.input(r'D:\File.txt'):

line = line.replace(" ", "")

line = line[0:-1]

print(line)

结果:

注意:例如,“File.txt”包含两行,第一行为“line1”,第二行为“line2”,则输出为:line1

line2

通过使用“Tkinter多行文本框”而不是文件(在上面的示例file.txt中),我希望通过面向对象编程范式得到相同的结果。

下面的代码创建了一个多行Tkinter文本框:import tkinter as tki # Tkinter -> tkinter in Python3

class App(object):

def __init__(self):

self.root = tki.Tk()

# create a Frame for the Text and Scrollbar

txt_frm = tki.Frame(self.root, width=200, height=200)

txt_frm.pack(fill="both", expand=True)

# ensure a consistent GUI size

txt_frm.grid_propagate(False)

# implement stretchability

txt_frm.grid_rowconfigure(0, weight=1)

txt_frm.grid_columnconfigure(0, weight=1)

# create a Text widget

self.txt = tki.Text(txt_frm, borderwidth=3, relief="sunken")

self.txt.config(font=("consolas", 12), undo=True, wrap='word')

self.txt.grid(row=0, column=0, sticky="nsew", padx=2, pady=2)

# create a Scrollbar and associate it with txt

scrollb = tki.Scrollbar(txt_frm, command=self.txt.yview)

scrollb.grid(row=0, column=1, sticky='nsew')

self.txt['yscrollcommand'] = scrollb.set

def retrieve_input():

input = self.txt.get("0.0",END)

print(input)

app = App()

app.root.mainloop()

app.retrieve_input()

现在我的问题是,一旦我运行上面的代码,“Tkinter多行文本框”就来了,我在Tkinter文本框中输入4行:ABC

XYZ

PQR

QAZ

但我并没有得到确切的想法/实现,我如何能够从Tkinter文本框中逐个读取这些行,并将它们用于我的程序中的进一步处理。

我使用的Python版本是3.0.1。

请帮忙。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值