您好我是Python新手,目前已复制以下脚本:
# filename is printer.py
import sys
for arg in sys.argv:
print arg # the zeroth element is the module name
raw_input("press any key") # a trick to keep the python console open
我正在尝试获取模块名称后跟的参数。 但运行此代码会出现以下错误:
U:\printer.py
File "U:\printer.py", line 6
print arg # zeroth element is the module name
^
SyntaxError: Invalid syntax
有谁知道这里有什么问题吗? 我使用的是Python 3.2
答案 0 :(得分:5)
在Python 3中print
是一个函数:
print(arg)
答案 1 :(得分:5)
正如其他人所说,在python3中,print
是一个函数:
print arg
现在是:
print(arg)
此外,raw_input
已消失,仅由input
取代。 (在py2k中,input
将eval
来自命令行的字符串,但它不会在py3k中执行此操作。)
最后(也许是最重要的),您考虑过argparse
吗? (未经测试的代码如下)
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('foo',nargs='*',help="What a nice day we're having")
args = parser.parse_args()
print(args.foo)
答案 2 :(得分:2)
Python 3不再具有print
关键字,而是print
函数。
尝试改为
print(arg)