以下是练习中的代码:
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
答案 0 :(得分:2)
可见字符中有nothing wrong with the script。
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在评论中的建议)。
在这种情况下,您应该在'\x00'
结果中看到许多零字节repr()
。
答案 1 :(得分:1)
安装python2并在终端类型
python2 ex14.py myname
将解决问题 您正在运行最新的python版本的脚本 并且您的代码的语法是针对python版本2的 这就是你得到语法错误的原因