问题:如何解决在windows中virtualenv上执行pserve时出现的非ascii字符错误?在
说明:我试图在windows上的virtualenv中执行pserve(pyllons/pyramid开发web服务器)。这是一个新安装,所以可能与版本有关。在
问题:在virtualenv激活后,执行pserve config.ini
抛出错误:SyntaxError: Non-ASCII character '\x90' in file C:\PATH_TO_MY_ENV_HOME\env\Scripts\pserve.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
。在
命令行:
pserve development.ini --reload
注意事项:
测试完成:
环境:
解决方案:
卸载并重新安装解决了我的问题。在
我在这里没有答案,因为我既不用金字塔也不用窗户。但是,这种情况以前也有人见过,这可能是由于
python.exe
被用来执行pserve.exe
,因为这是一个可执行文件而不是Python程序。在以下是一些可能推动这一进程的链接-建议您加入谷歌集团,因为它拥有更为集中的金字塔专业知识:
Pyramid pserve.exe syntax error
Google Groups thread
Google search
一个具体的想法是确保您有一个
pserve.py
文件而不是pserve.exe
,并且您使用python pserve.py
来运行它。如果调用脚本有限制,请创建一个run-pserve.bat
批处理文件来调用Python,并在调用脚本之外对其进行测试。在或者,您可能希望在Windows上使用预配置的linuxvm。或者在Windows10上有一个很好的“bashforwindows”又名Windows Subsystem for Linux这真是一个完整的ubuntulinux。我认为,这两种方法中的任何一种都会使开发比Windows容易得多。在
假设您的
virtualenv
位于venv
目录中使用这个:
此错误消息附带一个建议,它显示
语法错误:文件
/path/to/file
中第#lineno
行中的非ASCII字符'\x90',但未声明编码;有关详细信息,请参见http://python.org/dev/peps/pep-0263/最大胆的部分是建议所在。这个PEP非常直接,解决方案就是为源文件定义一个编码。 你很有可能
解释器行是可选的,但是如果有解释器行,则可以第二次定义编码,如果没有解释器行,则可以先定义
根据字符集设置编码。utf-8应该适用于大多数情况,或者您可能需要其他编码。在
相关问题 更多 >
编程相关推荐