Python3 tkinter 实现文件读取及保存功能

yipeiwu_com6年前Python基础

tkinter介绍

tkinter是python自带的GUI库,是对图形库TK的封装

tkinter是一个跨平台的GUI库,开发的程序可以在win,linux或者mac下运行

# !/user/bin/env Python3
# -*- coding:utf-8 -*-
 
"""
file:window.py.py
create time:2019/6/27 14:54
author:Loong Xu
desc: 窗口
"""
import tkinter as tk
from tkinter import filedialog, dialog
import os
 
window = tk.Tk()
window.title('窗口标题') # 标题
window.geometry('500x500') # 窗口尺寸
 
file_path = ''
 
file_text = ''
 
text1 = tk.Text(window, width=50, height=10, bg='orange', font=('Arial', 12))
text1.pack()
 
 
def open_file():
  '''
  打开文件
  :return:
  '''
  global file_path
  global file_text
  file_path = filedialog.askopenfilename(title=u'选择文件', initialdir=(os.path.expanduser('H:/')))
  print('打开文件:', file_path)
  if file_path is not None:
    with open(file=file_path, mode='r+', encoding='utf-8') as file:
      file_text = file.read()
    text1.insert('insert', file_text)
 
 
def save_file():
  global file_path
  global file_text
  file_path = filedialog.asksaveasfilename(title=u'保存文件')
  print('保存文件:', file_path)
  file_text = text1.get('1.0', tk.END)
  if file_path is not None:
    with open(file=file_path, mode='a+', encoding='utf-8') as file:
      file.write(file_text)
    text1.delete('1.0', tk.END)
    dialog.Dialog(None, {'title': 'File Modified', 'text': '保存完成', 'bitmap': 'warning', 'default': 0,
               'strings': ('OK', 'Cancle')})
    print('保存完成')
 
 
bt1 = tk.Button(window, text='打开文件', width=15, height=2, command=open_file)
bt1.pack()
bt2 = tk.Button(window, text='保存文件', width=15, height=2, command=save_file)
bt2.pack()
 
window.mainloop() # 显示

总结

以上所述是小编给大家介绍的Python3 tkinter 实现文件读取及保存功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python中为什么要用self探讨

接触Python以来,看到类里的函数要带个self参数,一直搞不懂啥麻子原因。晚上特别针对Python的self查了一下,理理。 Python要self的理由 Python的类的方法和普...

Python解决两个整数相除只得到整数部分的实例

在python中进行两个整数相除的时候,在默认情况下都是只能够得到整数的值 解决方法: 1. 修改被除数的值为带小数点的形式即可得到浮点值 2.在文件头部引入 from __futu...

Python映射拆分操作符用法实例

本文实例讲述了Python映射拆分操作符用法。分享给大家供大家参考。具体如下: name="jack" age=24 s="name is {name} and age is {ag...

浅谈Python基础—判断和循环

浅谈Python基础—判断和循环

判断 缩进代替大括号。 冒号(:)后换号缩进。 if test=100 if test>50: print('OK') print('test') if-elif-els...

基于Python列表解析(列表推导式)

列表解析——用来动态地创建列表 [expr for iter_var in iterable if cond_expr] 例子一: map(lambda x: x**2, ra...