这是我的代码:
import os
def rename_file ():
file_list = os.listdir (r"C:\Users\Sushant\Desktop\test")
print (file_list)
for file_name in file_list:
os.rename(file_name, file_name.translate(None , "0123456789" ))
rename_file ()
结果:
^{pr2}$为什么我总是得到这个error
?我刚刚保存了一个带有一些数字的文件,想删除它。在
我猜您使用的是
Python3
,因为这是Python2
中的有效语法。对于Python3
,请使用以下内容:这是maketrans函数的文档。在
你用的翻译方法不对。translate方法需要maketrans方法创建的dict。在
打印将显示:123def123
使用
translate()
时,必须传入一个由maketrans()
创建的表作为第一个参数。这就是获取TypeError
的原因,因为您正在传递None
。在使用
maketrans()
可以在一个字符串中传递要更改的字符。在他们的第二个参数中放一个字符串。此函数返回一个表,然后传递给translate()
。在在你的情况下,像这样的事情会起作用的。在
关于maketrans()和{a2}的进一步阅读
相关问题 更多 >
编程相关推荐