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

思路:创建文件时,先检查是否有同名文件(使用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 创建新文件时避免覆盖已有的同名文件的解决方法 的全部内容, 来源链接: utcz.com/z/332960.html

回到顶部