为了账号安全,请及时绑定邮箱和手机立即绑定

添加注释编译失败

为什么加了注释就会

a = 'python'
print 'hello,', a or 'world' #输出结果为hello,python
b = ''
print 'hello,', b or 'world' #输出结果为hello,world

编译失败?

正在回答

3 回答

python源代码必须完全由ASCII集合组成,包括注释,如果直接在python中添加中文注释的时候,python执行时会引发异常,告知非ASCII字符语法错误。

0 回复 有任何疑惑可以回复我~
#1

慕用8247438

我用2.7.15的版本增加注释不需要在首行添加"# -*- coding: utf-8 -*-",也能正常编译,这是为什么呢
2019-03-17 回复 有任何疑惑可以回复我~
#2

Awful_Leo 回复 慕用8247438

你是直接在交互终端里试的吧,比如terminal或者cmd或者powershell里面。 这个慕课的平台在运行我们的代码时,是将我们写的代码放到一个扩展名为py的文件里,然后用python命令执行的。 如果你把你的代码复制到一个文件里,用py扩展名命名,比如abc.py,然后执行 python abc.py,就会报错的。 至于原因,我搜到的结果是:交互式每一句代码都是一个整体,会单独运行一次,不过共享整个缓存;而运行.py文件时里面的所有代码是一个整体。可以参考这里: https://blog.csdn.net/lnotime/article/details/81387322
2019-03-18 回复 有任何疑惑可以回复我~
#3

慕用8247438 回复 Awful_Leo

感谢回复,有心了!
2019-03-22 回复 有任何疑惑可以回复我~
#4

慕用8247438 回复 Awful_Leo

试了一下,的确会报错
2019-03-22 回复 有任何疑惑可以回复我~
查看1条回复

在代码第一行加"# -*- coding: utf-8 -*-"

0 回复 有任何疑惑可以回复我~
#1

Mr_黄黄 提问者

我明明注释掉了,为什么还会存在编码错误?难道被注释的语句也会参与编译运行么?
2019-01-17 回复 有任何疑惑可以回复我~

程序中的编码错误,python默认是acii模式,没有支持utf8,源代码文件第一行添加:#coding:utf-8,这样就可以避免了

1 回复 有任何疑惑可以回复我~
#1

Mr_黄黄 提问者

我不明白的是,我都注释掉了,编译运行的时候被注释的语句不应该是没有被执行么?为什么还会存在编码错误?
2019-01-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

添加注释编译失败

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信