使用正则批量修改文件名

批量修改还有汉字的文件名

import os
import re

path = "./data/test"
path_list = os.listdir(path)  # 获取当前文件下所有文件

for path_name in path_list:
    dir_path = path + "/" + path_name  # 拼接老路径
    new_pn = re.sub("[\u4e00-\u9fa5]" ,"",path_name)  # 使用正则表达式去除含有汉字
    new_dp = path + "/" + new_pn  # 去除汉字后的名字
    os.rename(dir_path,new_pn)  # 修改名字

使用切片实现trim函数功能
实现中遇到的问题:第一for 没有使用break.导致一直为空。进行问题查找时候没有看代码,一直想着运行找错。这个行为很不好。
第二 进行去除后面的空字符串,需要逆切边,注意前开后闭。最后的结果是逆序的需要在逆回来。

def trim4(s):
... 	c = 0
... 	for ind in s[::]:
... 		if ind != " ":
... 			s = s[c::]
... 			break
... 		c += 1
... 	c = -1	
... 	for ind in s[-1::-1]:
... 		if ind != " ":
... 			s = s[c:-len(s)-1:-1]
... 			s = s[::-1]
... 			break
... 		c -=1
... 	return s
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值