python 误读文件路径名

python misreading filepath name

我想遍历我计算机上 L: 驱动器中名为 11109 的文件夹中的一些文件。这是我的脚本:

for filename in os.listdir('L:109'):
    print(filename.split('-')[1])

但是错误消息返回为:

File "L:/OMIZ/rando.py", line 12, in <module>
for filename in os.listdir('L:109'):

FileNotFoundError: [WinError 3] The system cannot find the path specified: 
'L:I09'

它读取 L:\11109 正常,但错误消息说指定的路径是 L:I09?

要解决这个问题你可以这样做

for filename in os.listdir('L:/11109'):
    print(filename.split('-')[1])

您需要使用原始字符串或转义反斜杠,否则 1 会解析为 I:

a = 'L:109'
print(a)  # shows that indeed 'L:I09'

b = r'L:109'
print(b)  # prints 'L:109'

c = 'L:\11109'  # will be understood correctly by open()