使用以下命令重命名具有特殊字符的文件操作系统重命名()

2024-09-27 21:31:26 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,我尝试重命名许多文件,它们的名称如下:

B-4-Ðóµ(602).dbf

假设这是“file_list”的第一个元素是my directory:

file_list = os.listdir(mydir)
file_list[0]

'B-4???\xa8?\xed\x8d\xd0\x8f\xf3?\xb5(602).dbf'

现在这与windows资源管理器(上面)中看到的文件名完全不同,这可能是以下问题的根源:

^{pr2}$

关于如何重命名这个文件有什么想法吗?在


Tags: 文件名称元素osmydirectorylistfile
1条回答
网友
1楼 · 发布于 2024-09-27 21:31:26

问题是您的文件包含非ASCII字符,无法用普通Python(字节)字符串正确表示这些字符。通过将Unicode目录名传递给listdir,可以从Python获得正确的Unicode名称;这将导致listdir返回Unicode文件名。在

示例:

file_list = os.listdir(unicode(mydir)) # or e.g. mydir.decode('utf8')

os.rename(file_list[0], u'myfile.dbf')

相关问题 更多 >

    热门问题