Python 创建新文件时避免覆盖已有的同名文件的解决方法


Posted in Python onNovember 16, 2018

思路:创建文件时,先检查是否有同名文件(使用os.path.isfile),如果有,则在文件名后加上编号n来创建。

关键点:

1. 使用os.path.isfile判断文件是否存在

2. 使用递归函数判断

2. 添加编号时, 使用可变list 传值n=[0]

完整代码如下:

import os

def check_filename_available(filename):
  n=[0]
  def check_meta(file_name):
    file_name_new=file_name
    if os.path.isfile(file_name):
      file_name_new=file_name[:file_name.rfind('.')]+'_'+str(n[0])+file_name[file_name.rfind('.'):]
      n[0]+=1
    if os.path.isfile(file_name_new):
      file_name_new=check_meta(file_name)
    return file_name_new
  return_name=check_meta(filename)
  return return_name
with open(check_filename_available('t.txt'),'w') as f:
  f.write('Checking func!')

以上这篇Python 创建新文件时避免覆盖已有的同名文件的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的ConfigParser模块使用详解
May 04 Python
Python微信库:itchat的用法详解
Aug 14 Python
python的numpy模块安装不成功简单解决方法总结
Dec 23 Python
python实现黑客字幕雨效果
Jun 21 Python
Python根据已知邻接矩阵绘制无向图操作示例
Jun 23 Python
python 定义给定初值或长度的list方法
Jun 23 Python
使用python实现mqtt的发布和订阅
May 05 Python
在Pycharm中使用GitHub的方法步骤
Jun 13 Python
树莓派使用USB摄像头和motion实现监控
Jun 22 Python
python项目对接钉钉SDK的实现
Jul 15 Python
python模块如何查看
Jun 16 Python
python文件操作seek()偏移量,读取指正到指定位置操作
Jul 05 Python
用python标准库difflib比较两份文件的异同详解
Nov 16 #Python
在Pandas中给多层索引降级的方法
Nov 16 #Python
Python 面试中 8 个必考问题
Nov 16 #Python
python 使用值来排序一个字典的方法
Nov 16 #Python
pandas通过索引进行排序的示例
Nov 16 #Python
在pandas多重索引multiIndex中选定指定索引的行方法
Nov 16 #Python
对Pandas MultiIndex(多重索引)详解
Nov 16 #Python
You might like
一个简单的自动发送邮件系统(二)
2006/10/09 PHP
PHP入门学习的几个不错的实例代码
2008/07/13 PHP
PHP房贷计算器实例代码,等额本息,等额本金
2017/04/01 PHP
JQuery通过Ajax提交表单并返回结果
2011/07/31 Javascript
jQuery EasyUI API 中文文档 - NumberSpinner数值微调器使用介绍
2011/10/21 Javascript
基于js disabled="false"不起作用的解决办法
2013/06/26 Javascript
使用JavaScript 编写简单计算器
2014/11/24 Javascript
javascript实现点击单选按钮链接转向对应网址的方法
2015/08/12 Javascript
Javascript实现单例模式
2016/01/24 Javascript
vue + socket.io实现一个简易聊天室示例代码
2017/03/06 Javascript
原生JS+Canvas实现五子棋游戏实例
2017/06/19 Javascript
如何去除vue项目中的#及其ie9兼容性
2018/01/11 Javascript
Nodejs中使用puppeteer控制浏览器中视频播放功能
2019/08/26 NodeJs
python获取android设备的GPS信息脚本分享
2015/03/06 Python
Python与Redis的连接教程
2015/04/22 Python
Python编程中的异常处理教程
2015/08/21 Python
关于Tensorflow中的tf.train.batch函数的使用
2018/04/24 Python
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
Flask框架使用DBUtils模块连接数据库操作示例
2018/07/20 Python
使用TensorFlow实现SVM
2018/09/06 Python
Python OpenCV实现测量图片物体宽度
2020/05/27 Python
python 实现简易的记事本
2020/11/30 Python
Python爬虫入门教程01之爬取豆瓣Top电影
2021/01/24 Python
纯CSS3制作漂亮带动画效果的主机价格表
2015/04/25 HTML / CSS
自然健康的概念:Natural Healthy Concepts
2020/01/26 全球购物
如何编写优秀的食品项目创业计划书
2014/01/23 职场文书
网上卖盒饭创业计划书范文
2014/02/07 职场文书
创文明城市标语
2014/06/16 职场文书
小学教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
党员违纪检讨书怎么写
2014/11/01 职场文书
幼儿教师辞职信范文
2015/03/02 职场文书
试用期辞职信范文
2015/03/02 职场文书
学校教师师德师风承诺书
2015/04/28 职场文书
七年级作文之游记
2019/12/11 职场文书
详解Flask开发技巧之异常处理
2021/06/15 Python
python区块链实现简版工作量证明
2022/05/25 Python