使用autorun运行python应用程序时遇到编码问题

时间:2016-05-13 13:06:14

标签: python linux shell raspberry-pi kivy

我正试图在我的Raspberry Pi上使用自动运行来运行我的kivy应用程序。 重新启动我的操作系统后,它将运行但在执行期间我遇到了下一行代码的编码问题:

CommonData.deviceSettings.Measurement.Alchogol = {}
for s in alchogolSettings:
    key = s["Name"].encode('utf-8').strip()
    value = s["Value"].encode('utf-8').strip()
    CommonData.deviceSettings.Measurement.Alchogol.update({key: value}) 

执行期间发生下一个错误

  

'ascii'编解码器不能编码0-14位的字符:顺序不在   范围(128)

在我的.py文件的顶部,我设置了下一条指令:

 #!/usr/bin/python
    # -*- coding: utf8 -*-

在这种情况下最有趣的是,如果我将从普通终端运行此程序,它会成功启动,但是当我尝试使用自动运行启动它时会出现此问题

有人知道为什么会出现这个问题以及如何避免这个问题吗?

1 个答案:

答案 0 :(得分:0)

我找到了这个问题的原因。在我的例子中,我运行一个python脚本,它是启动终端并启动另一个python脚本。最后一个脚本将一些cyrrilic文本打印到终端。这就是问题所在。删除此打印指令后,我避免了此错误。这个打印指令位于我在这篇文章中显示的代码之后的一行