我想将location = "C:Program Files (x86)DATAQ Instruments11005F80861ATesting 04-28-2021"
传递给os.chdir()
方法,但收到以下错误:
os.chdir(location)
OSError:[WinError 123]文件名、目录名或卷标语法不正确:"C:\Program Files(x86(\DATAQ InstrumentsH0\x05F80861A\Testing 04-28-2021">
我还尝试过使用字符串格式方法来传递变量。
os.chdir(r"{}".format(location))
但仍然会出现同样的错误。
有什么解决这个问题的建议吗?
其中一个答案建议使用location = r"C:Program Files (x86)DATAQ Instruments11005F80861ATesting 04-28-2021"
,它有效,但请参阅下面的更新。
更新:我想提到的是,我将使用sys.argv方法来使用终端获取位置变量。因此,我担心如何在代码中将位置变量设置为原始字符串。
我看到一篇关于通过以下操作将字符串转换为原始字符串的帖子:
location = "C:Program Files (x86)DATAQ Instruments11005F80861ATesting 04-28-2021"
location = location.encode('unicode_escape')
b'C:\\Program Files(x86(\\DATAQ仪器H0\x05F80861A\\Testing 04-28-2021’
现在,如果我将位置传递给os.chdir((,它仍然会给我同样的错误。
在您的路径中,您有一些unicode字符,它们是11005
您可以直接使用原始字符串,同时定义像这样的位置
location = r"C:Program Files (x86)DATAQ Instruments11005F80861ATesting 04-28-2021"
print(os.chdir(location))