首先,有点背景:我在日本工作,所以带有日文字符的文件夹很常见(比如作业フォルダ,“工作文件夹”)。
我有一个python程序,然后我编译为字节码。如果我从Windows命令行执行这个编译文件,它运行没有问题:
例如:
python.exe C:\作业フォルダ\ myProgram.py
但是,使用以下命令编译后:
python.exe -OO -m py_compile myProgram.py
我收到以下错误:
python.exe C:\作业フォルダ\ myCompiledProgram.pyc
python:无法重新打开pyc文件
如果我进入作业フォルダ文件夹并执行如下:
python.exe myCompiledProgram.pyc
它运行没有问题。但是,我希望它在我给出绝对路径的情况下运行,而且我想将文件路径作为参数传递,这也会产生如下错误:
RuntimeError:无法打开C:\作业フォルダ\ somefile.txt
为什么只在编译后才会发生这种情况?有办法解决吗?