sys.argv[1] 返回一个字符串,因此您不能将其添加为参数/参数。
我不明白你为什么需要这个,只是根本不提出任何论点:
def test():
print "Hello " + sys.argv[1]
你可能也搞混了。参数名称不必与调用函数时使用的名称相同。例如,如果我有n = 5,则该函数不需要有一个名为n 的参数。它可以是任何东西。
所以你可以这样做:
def test(myargument):
print "Hello " + myargument
我只是要给你一个关于论点的快速小“教程”。
def myfunc():
print "hello!"
这里我们有一个函数。要调用它,我们使用myfunc(),是吗?当我们执行 myfunc() 时,它会打印“hello!”。
这是另一个函数:
def myfunc(word):
print word
这个函数有一个参数。所以当我们调用它时,我们必须添加一个参数。下面是一个调用函数的例子:
def myfunc(word):
print word
myword = 'cabbage'
myfunc(myword)
注意'cabbage' 是如何在myword 变量中设置的。它确实不必须与我们在函数中调用的参数相同。事实上,如果需要,我们甚至不必创建变量。我们可以myfunc('cabbage')。
另外,在这个例子中,你只能输入一个参数,因为当我们defined函数时,我们只使用了一个参数。如果你添加两个,你会得到类似myfunc takes one argument (two given)的东西。
我们调用了参数word,所以我们可以在函数中使用它。注意我有print word 而不是print myword。就好像我们做了word = myword,但我们没有做这一步,而是使用参数名称。