Geeker_odd 发表于 2021-7-20 16:26:48

os.path.splitext(path)异常

如下图,我在IDLE使用os.path.splitext()试图分开文件名与扩展名,路径出现异常:

>>> os.path.splitext('D:\\a\b\c.txt')
('D:\\a\x08\\c', '.txt')
>>> os.path.splitext('D:\\Practice\临时文件\file_collection.py')
('D:\\Practice\\临时文件\x0cile_collection', '.py')

第一个,为啥文件夹b变成了x08?

第二个,file_collection变成x0cile_collection?

逃兵 发表于 2021-7-20 16:36:18

被转义字符'\'转成ascii码了

你在路径上要么成对使用"\\"要么加上原始字符串r

os.path.splitext(r'D:\a\b\c.txt')
os.path.splitext(r'D:\Practice\临时文件\file_collection.py')

kogawananari 发表于 2021-7-20 16:41:29

所有的\你写成/就行了

>>> p = pathlib.PureWindowsPath('D://a/b/c.txt')
>>> os.path.splitext(p)
('D:\\a\\b\\c', '.txt')
>>>

Geeker_odd 发表于 2021-7-20 16:44:07

谢谢!明白了
页: [1]
查看完整版本: os.path.splitext(path)异常