Python 从.txt文件检索输入
使用bellow.txt文件,如何创建一个tkinter GUI,它将接受txt文件并为每行代码创建一个新框架。是否可以在每一页上为它们制作单独的按钮Python 从.txt文件检索输入,python,tkinter,Python,Tkinter,使用bellow.txt文件,如何创建一个tkinter GUI,它将接受txt文件并为每行代码创建一个新框架。是否可以在每一页上为它们制作单独的按钮 #Hello.txt hi hello here 一般来说,您希望有一些代码示例,说明您正在尝试做什么,以及您在这里遇到的问题 然而,这并不难想象,我想树立一个榜样 这里我创建了一个GUI,它有两个按钮和一个标签。我只是使用跟踪变量在下一个或上一个索引处更新标签。如果我到达列表的开头或结尾,按钮将不会执行任何操作,除非向控制台打印您已到
#Hello.txt
hi
hello
here
一般来说,您希望有一些代码示例,说明您正在尝试做什么,以及您在这里遇到的问题 然而,这并不难想象,我想树立一个榜样 这里我创建了一个GUI,它有两个按钮和一个标签。我只是使用跟踪变量在下一个或上一个索引处更新标签。如果我到达列表的开头或结尾,按钮将不会执行任何操作,除非向控制台打印您已到达末尾 这个例子应该为你要做的事情打下良好的基础。 我的main.py python文件和data.txt文件位于同一目录中 data.txt文件如下所示:
Row one in file.
Row two in file.
Row three in file.
代码是:
import tkinter as tk
class App(tk.Tk):
def __init__(self):
super().__init__()
self.list_of_data_in_file = []
self.ndex = 0
with open("data.txt", "r") as data:
# Readlines() will convert the file to a list per line in file.
self.list_of_data_in_file = data.readlines()
self.lbl = tk.Label(self, text=self.list_of_data_in_file[self.ndex])
self.lbl.grid(row=0, column=1)
tk.Button(self, text="Previous", command=self.previous).grid(row=0, column=0)
tk.Button(self, text="Next", command=self.next).grid(row=0, column=2)
def previous(self):
# simple if statement to make sure we don't get errors when changing index on the list.
if self.ndex != 0:
self.ndex -= 1
self.lbl.config(text=self.list_of_data_in_file[self.ndex])
else:
print("No previous index")
def next(self):
# simple if statement to make sure we don't get errors when changing index on the list.
if self.ndex != (len(self.list_of_data_in_file) - 1):
self.ndex += 1
self.lbl.config(text=self.list_of_data_in_file[self.ndex])
else:
print("Reached end of list!")
if __name__ == "__main__":
App().mainloop()
欢迎来到StackOverflow。请按照您创建此帐户时的建议,阅读并遵循帮助文档中的发布指南,在这里申请。StackOverflow不是设计、编码、研究或教程资源。然而,若你们遵循你们在网上找到的任何资源,进行诚实的编码尝试,并遇到问题,你们会有一个很好的例子来发布。你们有什么问题?你知道怎么读文件吗?你知道如何分析一行是否有引号中的数据吗?你知道如何创建框架吗?你不明白这个问题的哪一部分?