gpt4 book ai didi

python - 如何将非 ASCII 字符编码的文件重命名为 ASCII

转载 作者:太空狗 更新时间:2023-10-30 00:50:47 27 4
gpt4 key购买 nike

我有文件名“abc张.xlsx”,其中包含某种非 ASCII 字符编码,我想删除所有非 ASCII 字符以将其重命名为“abc.xlsx”。

这是我尝试过的:

import os
import string
os.chdir(src_dir) #src_dir is a path to my directory that contains the odd file
for file_name in os.listdir():
new_file_name = ''.join(c for c in file_name if c in string.printable)
os.rename(file_name, new_file_name)

os.rename() 处产生以下错误:

builtins.WindowsError: (2, 'The system cannot find the file specified')

这是在 Windows 系统上,sys.getfilesystemencoding() 给我 mbcs,如果有帮助的话。

我应该怎么做才能避免此错误并允许我更改文件名?

最佳答案

给你,这也适用于 python 2.7

import os
import string

for file_name in os.listdir(src_dir):
new_file_name = ''.join(c for c in file_name if c in string.printable)
os.rename(os.path.join(src_dir,file_name), os.path.join(src_dir, new_file_name))

干杯!如果您觉得这个答案有用,请不要忘记投票! ;)

关于python - 如何将非 ASCII 字符编码的文件重命名为 ASCII,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17870055/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com