python批量修改文件名和工程内容

需求:要求批量修改图片,文件名,并修改工程内使用到的内容。
思路:遍历要修改的文件,修改文件名前,遍历工程内容查找使用到的文件名,然后修改工程内使用到的文件名,再修改文件名。
需了解的函数:字符串操作,遍历文件夹,判断文件还是文件夹,文件重命名,判断文件类型,文件内容查找替换字符串。

实例代码

import 'os'

sLuaPath	= './src/project'
sPicPath	= './res/image'
uCount		= 1

def fRenamePic(sInitPath, sFile):
	sFilePath = os.path.join(sInitPath, sFile) # 拼接好遍历当层的文件
	if (os.path.isfile(sFilePath)):
		# 如果是文件,则修改名称,并去修改lua文件内的内容
		fRenameLua(sFilePath)
	else:
		for sFile1 in sFilePath:
			fRenamePicPath(sFilePath, sFile1) # 递归遍历下层

def fRenameLua(sFilePath):
	for sLua in os.listdir(sLuaPath):
		fReplaceLuaContent(sLuaPath, sLua, sFilePath)

def fReplaceLuaContent(sLuaPath, sLua, sPicPath):
	sFilePath = os.path.join(sLuaPath, sLua)
	if (os.path.isfile(sFilePaht)):
		# 如果是文件,则修改名称,并修改lua文件内内容
		lStrList = sFilePaht.split('/')
		sFileName = lStrList[len(lStrList)-1]
		
		# 读取文件内容
		fhFile1 = open(sFilePath,"r")
        sContent = fhFile1.read()
        fhFile1.close()
		
		# 替换文件内容
		sNew = sContent.replace('tihuan_name_'+uCount, sFileName)
		
		# 重写文件
		with open(sFilePath, 'w') as fhFile2:
			fhFile2.write(sNew)
	else:
		# 递归遍历
		for sLua1 in os.listdir(sFilePath):
			fReplaceLuaContent(sFilePath, sLua1, sPicPath)

for val in os.listdir(sPicPath):
	fRenamePic(sPicPath, val)
Python中,可以使用os模块进行批量修改文件名。根据引用和的内容,有两种方法可以实现批量修改文件名。 方法一是使用os.listdir()函数,该函数可以获取指定目录下的所有文件名,然后通过添加前缀或替换内容修改文件名。你可以使用类似下面的代码来实现文件批量重命名: ``` import osdef rename_files(): path = r'E:\我的学习\编程\Python\PythonTest2\Test2' # 修改为你的文件夹路径 prefix = 'new_' # 修改为你想要添加的前缀 for filename in os.listdir(path): if filename.endswith('.txt'): # 修改为你的文件后缀 new_filename = prefix + filename # 添加前缀 os.rename(os.path.join(path, filename), os.path.join(path, new_filename)) rename_files() ``` 方法二是使用os.walk()函数,该函数可以遍历指定目录及其子目录下的所有文件,然后同样通过添加前缀或替换内容修改文件名。你可以使用类似下面的代码来实现文件批量重命名: ``` import osdef rename_files(): path = r'E:\我的学习\编程\Python\PythonTest2\Test2' # 修改为你的文件夹路径 prefix = 'new_' # 修改为你想要添加的前缀 for root, dirs, files in os.walk(path): for filename in files: if filename.endswith('.txt'): # 修改为你的文件后缀 new_filename = prefix + filename # 添加前缀 os.rename(os.path.join(root, filename), os.path.join(root, new_filename)) rename_files() ``` 以上代码中,我们假设要修改文件后缀为.txt,你可以根据实际情况修改文件后缀和需要添加的前缀。同时,记得在运行程序前修改文件夹路径为你的实际路径。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值