OSError:[Errno 22]无效的参数:'E:\\ project \\ genres \\ blues \ x08lues.00000.au'

时间:2018-12-31 11:40:12

标签: python-3.x

当我编写下面的代码行

filename = 'E:\project\genres\blues\blues.00000.au'

我得到的输出为

'E:\\project\\genres\x08lues\x08lues.00000.au'

为什么蓝调中的'b'被x08代替?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

\b被解释为退格键(很像\n是换行符,\t是制表符)。参见list of ASCII control characters\x08\b的Unicode表示形式。

您需要:

  • 使用双斜杠

    filename = 'E:\\project\\genres\\blues\\blues.00000.au'
    
  • 使用正斜杠(是的,这些斜杠在Windows上有效)

    filename = 'E:/project/genres/blues/blues.00000.au'
    
  • 使用原始字符串文字

    filename = r'E:\project\genres\blues\blues.00000.au'