Python 3.x 通过cron运行python脚本时抛出UnicodeError

Python 3.x 通过cron运行python脚本时抛出UnicodeError,python-3.x,cron,python-unicode,cron-task,Python 3.x,Cron,Python Unicode,Cron Task,我的python脚本在手动运行时运行良好,但无论何时从cron作业运行,它都会抛出 UnicodeEncodeError:“ascii”编解码器无法对位置0中的字符“\u2122”进行编码:序号不在范围128中 myfile.py: print(u"\u2122") 我在macos high sierra python版本是3.6.0通过在crontab上添加以下内容来修复它: LC_ALL=en_US.UTF-8你能粘贴你的代码吗?这将帮助人们知道问题的原因。@mishsx粘贴。代码很简

我的python脚本在手动运行时运行良好,但无论何时从cron作业运行,它都会抛出 UnicodeEncodeError:“ascii”编解码器无法对位置0中的字符“\u2122”进行编码:序号不在范围128中

myfile.py:

print(u"\u2122")

我在macos high sierra
python版本是3.6.0

通过在crontab上添加以下内容来修复它:


LC_ALL=en_US.UTF-8

你能粘贴你的代码吗?这将帮助人们知道问题的原因。@mishsx粘贴。代码很简单,只需将LC_ALL=en_US.UTF-8放在我的crontab列表的顶部即可。这是一种黑客行为,在其他环境中,它可以在没有它的情况下工作。它给我留下了深刻的印象,因为之前我也有类似这样的固定路径变量问题。理想情况下,在crontab文件中应该只有作业。因此,必须重新构建或重新安装操作系统级别的某些东西,才能使修复程序正常运行。您应该研究它在其他环境中工作的原因,但仅限于此。是否存在导致这种情况的设置?迟早有人会在明天面临同样的问题,所以一定要发表评论,帮助下次看到这个问题的人。