Pyscripter为什么总报错?UnicodeEncodeError: 'ascii' codec can't encode characters in position 1-2:

安装了python2.6.6/2.7pyscripter2.1.1.0代码:defmain():passif__name__=='__main__':main()运行报错... 安装了python2.6.6 /2.7
pyscripter2.1.1.0

代码:
def main():
pass
if __name__ == '__main__':
main()

运行报错
UnicodeEncodeError: 'ascii' codec can't encode characters in position 1-2: ordinal not in range(128)

把python换成3.1.2 就没问题了.
可以运行.

因为想用py2.X 比较流行. 所以还是想用py2.X ..

谁知道怎么解决上面的办法..

好像和 encode 什么的无关..
joy32812 按照你说的改完了的确没有上述问题了. 把程序移动到其他电脑上不会出错吧.
展开
 我来答
joy32812
2010-09-02 · TA获得超过205个赞
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
在你python的安装目录下的Lib目录,找到site.py,修改def setencoding()方法
def setencoding():
.....
....
if 0:
# Enable to support locale aware default string encodings.

把那个if 0该位if 1试试。。

还有就是最好文件目录中不要出现中文。。
againinput4
2012-12-01 · TA获得超过2407个赞
知道大有可为答主
回答量:1446
采纳率:70%
帮助的人:629万
展开全部
话说,这样改动python的代码,还是不太妥当。

你这样,估计是pythn的本身的文件编码,没有设置好导致的此问题。

需要的,可以参考:
【总结】Python 2.x中常见字符编码和解码方面的错误及其解决办法

并且,看此为之前,最好了解这些:
【整理】Python中字符编码的总结和对比:Python 2.x的str和unicode vs Python 3.x的bytes和str

如此,都看懂了,基本上即可以避免绝大多数的问题了。
即使再出现类似问题,也可以自己找到错误原因,并且自己解决了。

(此处不能贴地址,请自行google搜标题,即可找到帖子地址)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d80ae74e5
2015-07-28 · TA获得超过158个赞
知道小有建树答主
回答量:113
采纳率:100%
帮助的人:84.6万
展开全部
在py文件头加入:
reload(sys)
sys.setdefaultencoding('utf-8')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式