PyInstaller编解码器问题

时间:2017-11-06 11:08:20

标签: python pyinstaller

使用Ubuntu 16.04,python 2.7.12,我有这段代码(codec.py):

#!usr/bin/env python
# -*- coding: utf-8 -*-

import codecs

text = u'pi: \u03c0'
print text

启动程序:python codec.py正常工作,并显示:

pi: π

使用pyinstaller 3.3编译此代码后,我尝试使用./codec执行程序,但收到此错误:

   Traceback (most recent call last):
      File "codec.py", line 7, in <module>
   UnicodeEncodeError: 'ascii' codec can't encode character u'\u03c0' in position 4: ordinal not in range(128)
   [6816] Failed to execute script codec

我没有解决这个问题的方法。你呢?

解决方案是修改第7行:

print text.encode(&#34; utf-8&#34;)

使用pyinstaller编译后,程序运行正常,没有错误。

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用IDLE 3代替2.7? 我发现很多问题源于使用错误的python版本,因为库不兼容。

另请查看:Python Unicode Encode Error

也许你的语法不正确?