我在使用标准错误时出现问题,每当我尝试使用它时,我的计算机都会出现语法错误,我无法解释。
所以这是我的代码:
import sys
def main(argv):
if len(argv) != 3:
print("Usage: python walk.py n l", file=sys.stderr)
else:
l = argv[2]
n = argv[1]
print("You ended up", simuleer(n,l), "positions from the starting point.")
if __name__ == "__main__":
main(sys.argv)
这是我的错误
MacBook-Air-van-Luuk:documents luuk$ python walk.py 5 1 2
File "walk.py", line 21
print("Usage: python walk.py n l", file=sys.stderr)
^
我希望有人可以解释为什么会发生这种情况,提前谢谢!
答案 0 :(得分:15)
您认为自己使用的是Python 3.x,但它实际上是Python 2.x.在大多数系统python
上,可执行文件意味着Python 2.x。
print
不是Python 2.x中的函数,不能像这样使用,导致语法错误。
你应该寻找一些运行Python 3.x的方法。
对于这种特殊情况,您还可以使用from __future__ import print_function
,这将使代码与这两个版本兼容。
答案 1 :(得分:-3)
有办法解决它
只需删除" file ="来自打印方法
e.g:
print("用法:python walk.py n l",sys.stderr)