#在35-3的基础上进行优化,当用户点击ok按钮的时候,对打开的文件进行检查是否修改。
# 如果修改过,则提示覆盖保存、放弃保存、另存为并实现相应的功能 1 import easygui as g
import os
msg='浏览文件并打开'
title='测试'
default='D:\Python练习\*'
fileType='全部文件'
filePath=g.fileopenbox(msg,title,default,fileType) with open(filePath) as f:
title=os.path.basename(filePath)
msg='文件%s的内容如下:'%title
txt=f.read()
txt_new=g.textbox(title,msg,txt) if txt != txt_new[:-1]:
#检查文件是否修改,因为easygui,txtbox会在返回字符串后面追加一个行结束符("\n"),因此在比较稳健师傅改变时,需要我们人工忽略这个行结束符
msg1='选择您的操作:'
title='检测到文件被修改,请选择是否保存:'
buttons=['覆盖保存','放弃保存','另存为']
choice=g.buttonbox(title,msg,buttons)
#覆盖保存
if choice =='覆盖保存':
with open(filePath,'w') as f2:
f2.write(txt_new)
#放弃保存
if choice == '放弃保存':
pass
#另存为。。。
if choice == '另存为':
new_path=g.filesavebox(default='txt')
with open(new_path,'w') as f3:
f3.write(txt_new)

Python easyGUI 文件对比 覆盖保存的更多相关文章

  1. 小事牛刀之——python做文件对比

    使用python对比filename1和filenam2的差异,并将差异写入到filename3中. #!/usr/bin/env python # -*- coding: utf-8 -*- # @ ...

  2. Python easyGUI 文件浏览 显示文件内容

    #提供一个文件浏览夹.让用户选择需要打开的文件,打开并显示文件内容: import easygui as g import os msg='浏览文件并打开' title='测试' default='D ...

  3. 一个python的文件对比脚本

    脚本主要用来给游戏客户端做热更的. 处理方式就是针对每个文件求其MD5值,再根据文件的目录和名字对比两个版本的MD5值,如果不一样,则这次热更就需要更新这个文件. 用法很简单. 1,生成MD5码列表 ...

  4. (python功能定制)复杂的xml文件对比,产生HTML展示区别

    功能的设计初衷: 处理复杂的xml对比,屏蔽同节点先后顺序的影响 主要涉及知识点: 1.xml解析 ------- ElementTree库 2.文件比对差别 ------- difflib库 3.获 ...

  5. python pandas合并多个excel(xls和xlsx)文件(弹窗选择文件夹和保存文件)

    # python pandas合并多个excel(xls和xlsx)文件(弹窗选择文件夹和保存文件) import tkinter as tk from tkinter import filedial ...

  6. Python的文件及异常

    1. Python的文件及异常 1.1 文件操作 1.1.1 从文件中读取数据 许多情况下,我们的信息是存储在文本中的.例如对用户行为的分析,用户访问系统或者网站的访问信息会被存储于文本中,然后对文本 ...

  7. Python :open文件操作,配合read()使用!

    python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...

  8. Python之文件读写

    本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 I/O在计算机中是指Input ...

  9. Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...

随机推荐

  1. C# Notes

    Token Based Authentication Attributes Tutorial - Conditional - Obsolete Covariance and Contravarianc ...

  2. http://www.gasi.ch/blog/inside-deep-zoom-2/

    Inside Deep Zoom – Part II: Mathematical Analysis Welcome to part two of Inside Deep Zoom. In part o ...

  3. Android单行本+多渠道脚本工具

    多渠道包的build相信广大android开发者应该很熟悉了,既可以用ant,写一写正则替换然后build出n个apk, 有时后情况会更复杂些,你比如你有一个app,需要build出一些单行本,代码基 ...

  4. 《FPGA全程进阶---实战演练》第十二章 二进制码与格雷码PK

    大家在写程序的时候,可能会听闻,什么独热码,什么格雷码,什么二进制码等等,本节意在解释这几种编码之间的区别和优势以及用verilog怎么去实现,下面先介绍这几种编码的区别. 1 基础理论部分 1.1 ...

  5. (笔记)Linux延时及时间函数总结

    一. 基础知识1.时间类型.Linux下常用的时间类型有4个:time_t,struct timeval,struct timespec,struct tm.(1)time_t是一个长整型,一般用来表 ...

  6. C语言中头文件——你乱吗????

    如果尔等之辈问本大神,为什么需要头文件呢?本大神告诉你:想要知道为什么需要头文件的话,你就应该知道C语言编译的过程: 本大神为你们准备了基本知识: C语言文件的编译与执行的四个阶段并分别描述: C++ ...

  7. Linux编程_Shell脚本练习题

    1,编写shell脚本,计算1~100的和. #! /bin/bash `;do sum=$[$i+$sum] done echo $sum 2,编写shell脚本,输入一个数字n并计算1~n的和. ...

  8. VS下关于 _CRT_SECURE_NO_WARNINGS 问题的分析与解决

    一.问题的起因 六月下旬,老师布置了有关图形学的课设,于是我将我在VS2013中写好的代码进行编译,结果得到了以下信息: 二.解决方法 1,按照英文提示,我先将fopen改成了fopen_s后,发现错 ...

  9. 第三百八十七节,Django+Xadmin打造上线标准的在线教育平台—网站上传资源的配置与显示

    第三百八十七节,Django+Xadmin打造上线标准的在线教育平台—网站上传资源的配置与显示 首先了解一下static静态文件与上传资源的区别,static静态文件里面一般防止的我们网站样式的文件, ...

  10. Xcode快捷键--灰常实用的快捷键,以后编程快捷多了

    从雨痕老大的博客上转来的 http://www.rainsts.net/article.asp?id=1066 读书人偷书不算窃 :)   1. 文件 CMD + N: 新文件CMD + SHIFT ...