如何在 Python 中调用函数(示例)
Python中的函数是什么?
Python 中的函数是一段在被引用时运行的代码。它用于在程序的不同位置重用代码。它也被称为方法或过程。Python 提供了许多内置函数,如 print()、input()、compile()、exec() 等,但它也允许用户创建自己的函数。
如何在 Python 中定义和调用函数
Python 中的函数通过“def”语句定义,后跟函数名称和括号(())
示例
让我们使用命令“def func1():”定义一个函数并调用它。该函数的输出将是“我正在学习 Python 函数”。
函数 print func1() 调用我们的 def func1(): 并打印命令“I am learning Python function None.”。
Python 中定义函数的规则集。
- 任何参数或输入参数都应放在这些括号内
- 函数的第一个语句可以是一个可选语句——函数的文档字符串
- 每个函数内的代码都以冒号(:)开始,并且应该进行缩进(空格)
- return (expression) 语句会退出一个函数,并可选择地将值传回给调用者。不带参数的 return 语句等同于 return None。
Python 中缩进(空格)的重要性
在我们熟悉 Python 函数之前,了解用于声明 Python 函数的缩进规则非常重要,这些规则也适用于 Python 的其他元素,例如声明条件、循环或变量。
Python 遵循特定的缩进样式来定义代码,因为Python 函数没有像花括号这样的显式开始或结束来指示函数的开始和停止,它们必须依赖于此缩进。这里我们用“print”命令举一个简单的例子。当我们写“def func 1 ():”正下方的“print”时,它会显示“缩进错误:预期有缩进块”。
现在,当您在“print”函数前面添加缩进(空格)时,它应该会按预期打印。
至少一个缩进足以让您的代码成功运行。但作为最佳实践,建议留出大约 3-4 个缩进以调用您的函数。.
在声明缩进时,您还必须在代码的其余部分保持相同的缩进。例如,在下面的屏幕截图中,当我们调用另一个语句“still in func1”时,如果它没有声明在第一个 print 语句的正下方,它将显示缩进错误“未缩进的行与任何其他缩进级别不匹配。”
现在,当我们对这两个语句应用相同的缩进并将它们对齐在同一行时,它会产生预期的输出。
函数如何返回值?
Python 中的 return 命令指定要返回给函数调用者的值。让我们通过以下示例来理解这一点
步骤 1)函数不返回任何内容
这里——我们看到当函数没有“return”时。例如,我们想要 4 的平方,当代码执行时它应该给出答案“16”。当我们简单地使用“print x*x”代码时,它会给出,但当你调用函数“print square”时,它会输出“None”。这是因为当你调用函数时,递归不会发生,并且会从函数末尾退出。Python 在函数末尾退出时返回“None”。
步骤 2)将 print 命令替换为赋值命令
为了更清楚地说明这一点,我们用赋值命令替换 print 命令。让我们检查输出。
当您运行命令“print square (4)”时,它实际上返回了对象的值,因为这里没有特定的函数可以运行,所以它返回“None”。
步骤 3)使用“return”函数并执行代码
现在,我们将在这里看到如何使用“return”命令检索输出。当您使用“return”函数并执行代码时,它将输出“16”。
步骤 4)运行命令‘print square’
Python 中的函数本身就是对象,而对象具有某些值。我们在这里将看到 Python 如何处理对象。当您运行命令“print square”时,它会返回对象的值。由于我们没有传递任何参数,因此这里没有特定的函数可以运行,它返回一个默认值(0x021B2D30),这是对象的位置。在实际的 Python 程序中,您可能永远不需要这样做。
函数中的参数
参数是在调用函数时传递给函数的值。
换句话说,在调用方,它是参数;在函数方,它是形参。
让我们看看 Python 参数是如何工作的——
步骤 1)参数在函数定义中声明。调用函数时,您可以按如下所示传递这些参数的值
步骤 2)要为参数声明默认值,请在函数定义中为其分配一个值。
示例:x 没有默认值。y 的默认值为 0。当我们在调用 multiply 函数时只提供一个参数时,Python 会将提供的值赋给 x,同时将 y 的值保留为 0。因此 x*y 的乘积为 0
步骤 3)这次我们将 y 的值更改为 2 而不是默认值 y=0,它将返回输出 (4×2)=8。
步骤 4)您还可以更改在 Python 中传递参数的顺序。在这里,我们将 x 和 y 的值顺序颠倒为 x=4 和 y=2。
步骤 5)还可以将多个参数作为数组传递。在这里的示例中,我们通过调用 (*args) 函数来调用多个参数 (1,2,3,4,5)。
示例:我们将多个参数声明为 number (1,2,3,4,5),当我们调用 (*args) 函数时;它会输出 (1,2,3,4,5)。
提示:
- 在 Python 2.7 中,函数重载在 Python 中不受支持。函数重载是创建具有不同实现的相同名称的多个方法的能力。Python 3 完全支持函数重载。
- 方法和函数之间存在很大的混淆。Python 中的方法与对象实例相关联,而函数则不然。当 Python 调用一个方法时,它会将该调用的第一个参数绑定到适当的对象引用。简而言之,Python 中的独立函数是“函数”,而类或实例的属性函数是“方法”。
这是完整的 Python 3 代码
#define a function def func1(): print ("I am learning Python function") print ("still in func1") func1() def square(x): return x*x print(square(4)) def multiply(x,y=0): print("value of x=",x) print("value of y=",y) return x*y print(multiply(y=2,x=4))
这是完整的 Python 2 代码
#define a function def func1(): print " I am learning Python function" print " still in func1" func1() def square(x): return x*x print square(4) def multiply(x,y=0): print"value of x=",x print"value of y=",y return x*y print multiply(y=2,x=4)
摘要
Python 中的函数是可重用的代码块,用于执行单一、相关的操作。在本文中,我们将看到
- 由 def 语句定义的函数
- 每个函数内的代码块都以冒号(:)开始,并且应该进行缩进(空格)
- 任何参数或输入参数都应放在这些括号内,等等。
- 声明函数后,至少应在代码前留一个缩进
- 在 def 函数内的整个代码中都应保持相同的缩进样式
- 作为最佳实践,在语句前留三个或四个缩进被认为是最佳的
- 您可以使用“return”命令将值返回给函数调用。
- 当未向被调用函数提供参数时,Python 将打印一个随机值,如 (0x021B2D30)。例如“print function.”
- 在调用方,它是参数;在函数方,它是形参
- 参数中的默认值——当我们只提供一个参数来调用 multiply 函数或其他任何函数时,Python 会默认分配另一个参数
- Python 还允许您颠倒参数的顺序