Python easyGUI 文件对比 覆盖保存
#在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 文件对比 覆盖保存的更多相关文章
- 小事牛刀之——python做文件对比
使用python对比filename1和filenam2的差异,并将差异写入到filename3中. #!/usr/bin/env python # -*- coding: utf-8 -*- # @ ...
- Python easyGUI 文件浏览 显示文件内容
#提供一个文件浏览夹.让用户选择需要打开的文件,打开并显示文件内容: import easygui as g import os msg='浏览文件并打开' title='测试' default='D ...
- 一个python的文件对比脚本
脚本主要用来给游戏客户端做热更的. 处理方式就是针对每个文件求其MD5值,再根据文件的目录和名字对比两个版本的MD5值,如果不一样,则这次热更就需要更新这个文件. 用法很简单. 1,生成MD5码列表 ...
- (python功能定制)复杂的xml文件对比,产生HTML展示区别
功能的设计初衷: 处理复杂的xml对比,屏蔽同节点先后顺序的影响 主要涉及知识点: 1.xml解析 ------- ElementTree库 2.文件比对差别 ------- difflib库 3.获 ...
- python pandas合并多个excel(xls和xlsx)文件(弹窗选择文件夹和保存文件)
# python pandas合并多个excel(xls和xlsx)文件(弹窗选择文件夹和保存文件) import tkinter as tk from tkinter import filedial ...
- Python的文件及异常
1. Python的文件及异常 1.1 文件操作 1.1.1 从文件中读取数据 许多情况下,我们的信息是存储在文本中的.例如对用户行为的分析,用户访问系统或者网站的访问信息会被存储于文本中,然后对文本 ...
- Python :open文件操作,配合read()使用!
python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...
- Python之文件读写
本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 I/O在计算机中是指Input ...
- Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
随机推荐
- Flutter 1.0 正式版: Google 的便携 UI 工具包
Flutter 1.0 正式版: Google 的便携 UI 工具包 文 / Tim Sneath,Google Dart & Flutter 产品组产品经理 Flutter 是 Google ...
- 2012Google校园招聘笔试题
1.已知两个数字为1~30之间的数字,甲知道两数之和,乙知道两数之积,甲问乙:“你知道是哪两个数吗?”乙说:“不知道”.乙问甲:“你知道是哪两个数吗?”甲说:“也不知道”.于是,乙说:“那我知道了”, ...
- listview item 动画
http://blog.csdn.net/lixiaodaoaaa/article/details/8284246 先看实现的效果如下: 演示效果如上: 上面的列表是GridView 要给这个Gr ...
- 关于Unity中坐标系的种类
坐标空间 1:物体空间: 3D物体自己的坐标空间 一般设计时几何体以中心为原点,人物以双脚为原点; 2: 世界空间: 3D物体在场景中的世界坐标, 整个游戏场景的空间; 3: 摄像机空间: 以观察摄像 ...
- http 状态码 40x
400 无法解析此请求. 401.1 未经授权:访问由于凭据无效被拒绝. 401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法而被拒绝. 401.3 未经授权:访问由于 ACL 对所请求 ...
- C++ namespace的用法
//namesp.h namespace pers{ const int LEN = 40; struct Person{ char fname[LEN]; ...
- List转DataTable(反射) ; 将泛型集合类转换成DataTable ; 将集合类转换成DataTable
public class ConvertX { #region 将集合类转换成DataTable /// <summary> /// 将集合类转换成DataTable /// </s ...
- js 事件调度
var EventTarget = function () { this._listener = {}; }; EventTarget.prototype = { constructor: this, ...
- C# Image与Base64编码互转函数
public Bitmap GetImageFromBase64(string base64string) { byte[] b = Convert.FromBase64String(base64st ...
- java-信息安全(三)-PBE加密算法
概述 信息安全基本概念: PBE算法(Password Based Encryption,基于口令加密) PBE PBE算法(Password Based Encryption,基于口令加密)是一种基 ...