以下是练习中的代码:
from sys import argv script, user_name = argv prompt = '> ' print "Hi %s, I'm the %s script." % (user_name, script) print "I'd like to ask you a few questions." print "Do you like me %s?" % user_name likes = raw_input(prompt) print "Where do you live %s?" % user_name lives = raw_input(prompt) print "What kind of computer do you have?" computer = raw_input(prompt) print """ Alright, so you said %r about liking me. You live in %r. Not sure where that is. And you have a %r computer. Nice. """ % (likes, lives, computer)
现在我正在运行Windows 7,并且正在运行带有代码的CMD行
python ex14.py myname
我得到这个错误:
File "ex14.py", line 3 Python ex14.py, user_name SyntaxError: invalid syntax
可见字符中的脚本没有任何问题 。
with open('ex14.py', 'rb') as file: s = file.read() print(repr(s)[:60]) u = s.decode('ascii') # this line should raise an error # if there are bytes outside ascii
检查Python版本以确保它是2.7(正确解释错误消息):
$ python -V
检查文件是否使用utf-16/32编码保存(@abarnert在注释中的建议)。
在这种情况下,您应该在repr()
结果中看到很多零字节'\x00'
。