接下来在括号中包含 arg1、arg2 的目的是什么
给它?
在这种情况下,arg1 和 arg2 被称为参数。参数允许函数接收预期用于执行任务的输入。输入由调用者提供。
例如,在学校数学中,您可能已经见过像 z = f(x, y) 这样的东西,其中名为 f 的函数被定义为 f(x, y) = x + y。这与编程语言中的概念相同。
它还允许您编写更通用、更灵活且可重用的代码。例如,您不必编写许多不同版本的函数来完成相同的任务但结果略有不同,避免出现add2(x, y) = x + y 和add3(x, y, z) = x + y + z 等情况。您可以简单地执行以下操作:
def sum(values): # values is of type 'list'
result = 0
for value in values:
result += value
return result
然后这样称呼它:
total = sum([1, 2, 3, 4, 5, 6, 7]) # a list of any length with numbers
或者像这样:
total = sum([1, 2])
一个函数需要多少个参数取决于它需要做什么以及其他因素。
更新
让我困惑的是 print_two_again("Steve","testing") ,什么是
这叫什么以及它的用途?
print_two_again("Steve","testing") 行是函数的调用(即函数调用)。这会导致程序“跳转”到名为print_two_again 的函数的主体中并开始执行其中的代码。
("Steve","testing") 部分是作为输入发送到函数的参数。这些是位置参数,这基本上意味着它们被“映射”到名称arg1和arg2,基于您在调用函数时提供它们的顺序。
例如,考虑函数f(x, y) = x - y。如果这个函数被调用为z = f(3, 4),那么名为x 的参数将接收到值3 和y 将是4,返回-1。如果您反转调用中的参数,那么您将拥有x=4 和y=3,它会返回1。您提供的函数中的参数也是如此。
这意味着函数调用中的参数顺序很重要。
与许多其他语言一样,Python 语言已经具有一组内置功能。名为print 的函数就是一个例子。您可以使用pydoc 命令获取大量信息(如果您使用Python3,我推荐使用pydoc3)。例如,命令pydoc3 print 会生成以下文档:
关于内置模块内置函数打印的帮助:
打印(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
请注意,这是 Python3 的文档。 Python2 文档会略有不同。
您在学校数学课程中对函数的理解与在编程语言中看到的函数之间存在直接关联。这是因为数学是计算机科学和编程语言等基础基础的一部分(例如算法分析)。