python实现读取TXT文本内容,并将内容弹窗显示出来。

本文使用的是Tkinter方法制作文本显示窗口。

省流版请直接看后续的代码即可。

以下是实现功能的思路:


最近在为瞳孔追踪做一个简单的UI界面,所以用TK搭建了一个窗口,其中放置了几个按钮控件。

其中一个按钮控件想实现:当点击这个按钮后,把瞳孔追踪的说明文本内容弹窗展示出来。

那怎么实现呢?先查查有没有啥第三方库有具体函数实现这个功能吧.......好吧,不太好找。

先把文本内容读取出来,再考虑显示的问题,如下:

"""

以下代码的功能是,读取与该程序同一路径下的README.txt文件,并输出出来
这个方法是按行读取文本内容的
由于我们的文本文件是中文字符,说明要用UTF-8编码方式读取文本(不然读取出来是乱码)
所以在open函数里添加了"encoding='UTF-8'"
此外,我们的文本文件里或多或少会存在中文符号,在读取的时候可能会报错,从而让读取中止
所以要在open函数里再添加"errors='ignore'",表示忽略读取错误,保证文本读取不被中止

"""
with open("README.txt", "r", encoding='UTF-8', errors='ignore') as f:  # 打开文件
    data = f.read()
    print(data)

读取是读取出来了,但是一行一行读取出来的,感觉不太行,决定把读取出来的文本整合一下,如下:

with open("README.txt", "r", encoding='UTF-8', errors='ignore') as f:  # 打开文件
    data = f.read()
    data = str(data)    # 保险一点,每读取一行内容就先转化为str格式(即使读取的内容就是str格式)
    data = data + data  # 把上一行内容与这一行内容整合
print(data)

最后再用TK做一个窗口,窗口里放一个标签控件,标签控件的文本内容就是我们读取出来的txt文件的内容,如下:

text_win = tk.Tk()
text_win.title('README')
with open("README.txt", "r", encoding='UTF-8', errors='ignore') as f:  # 打开文件
    data = f.read()
    data = str(data)
    data = data + data
textlabel = tk.Label(text_win, text=data, justify='left')
textlabel.pack()

把上述代码包装成一个自定义函数,作为按钮点击时的响应函数就行了,如下:

def show_text():
    text_win = tk.Tk()
    text_win.title('README')
    with open("README.txt", "r", encoding='UTF-8', errors='ignore') as f:  # 打开文件
        data = f.read()
        data = str(data)
        data = data + data
    textlabel = tk.Label(text_win, text=data, justify='left')
    textlabel.pack()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值