Python 函数示例:调用、缩进、参数和返回值
什么是 Python 中的函数?
Python 中的函数 是一段在被引用时运行的代码。它用于在程序中的多个位置使用代码。它也被称为方法或过程。 Python 提供了许多内置函数,如 print()、input()、compile()、exec() 等,但它也提供了创建自己函数的自由。
在本教程中,我们将学习
- 如何在 Python 中定义和调用函数
- Python中缩进(空格)的意义
- 函数如何返回值?
- 函数中的参数
如何在 Python 中定义和调用函数
Python中的函数由“def”定义 语句后跟函数名和括号( () )
示例:
让我们使用命令“def func1():”定义一个函数并调用该函数。该函数的输出将是“我正在学习 Python 函数”。
函数 print func1() 调用我们的 def func1():并打印命令“我正在学习 Python 函数无。 ”
Python中有一套规则来定义一个函数。
- 任何 args 或输入参数都应放在这些括号内
- 函数第一个语句可以是可选语句-文档字符串或函数的文档字符串
- 每个函数中的代码都以冒号 (:) 开头,并且应该缩进(空格)
- 语句return(表达式)退出一个函数,可选地将一个值传回给调用者。没有 args 的 return 语句与 return None 相同。
缩进(空格)在 Python 中的意义
在熟悉 Python 函数之前,了解声明 Python 函数的缩进规则很重要,这些规则适用于 Python 的其他元素以及声明条件、循环或变量。
Python 遵循一种特殊的缩进风格来定义代码,因为 Python 函数没有像花括号那样明确的开始或结束来指示函数的开始和停止,它们必须依赖这种缩进 .这里我们以“打印”命令为例。当我们在 def func 1 () 正下方编写“打印”函数时:它将显示“缩进错误:期望缩进块 “。
现在,当您在“打印”函数前面添加缩进(空格)时,它应该会按预期打印。
至少,一个缩进就足以让您的代码成功运行。但作为最佳实践,建议保留大约 3-4 缩进来调用您的函数 .
在声明缩进时,您还必须为其余代码保持相同的缩进 .例如,在下面的屏幕截图中,当我们调用另一个语句“still in func1”并且它没有在第一个打印语句的正下方声明时,它将显示缩进错误 “unndent 与任何其他缩进级别不匹配。”
现在,当我们对两个语句应用相同的缩进并将它们对齐在同一行时,它会给出预期的输出。
函数如何返回值?
Python 中的 return 命令指定返回给函数调用者的值。
让我们通过下面的例子来理解这一点
步骤 1) 在这里——我们看到函数何时不是“返回”。例如,我们想要 4 的平方,在执行代码时它应该给出答案“16”。当我们简单地使用“print x*x”代码时它会给出,但是当你调用函数“print square”时它会给出“None”作为输出。这是因为当你调用函数时,递归不会发生并且会从函数的末尾脱落。 Python 返回“None”表示函数结束失败。
步骤 2) 为了更清楚地说明这一点,我们将 print 命令替换为 assignment 命令。让我们检查一下输出。
当你运行命令“print square (4)”时,它实际上返回了对象的值,因为我们没有任何特定的函数可以在这里运行它返回“None”。
步骤 3) 现在,在这里我们将看到如何使用“return”命令检索输出。当你使用“return”函数并执行代码时,它会给出输出“16”。
第 4 步) Python 中的函数本身就是一个对象,一个对象具有一定的价值。我们将在这里看到 Python 如何处理对象。当您运行命令“print square”时,它会返回对象的值。由于我们没有传递任何参数,我们没有任何特定的函数可以在这里运行它返回一个默认值(0x021B2D30),即对象的位置。 在实际的 Python 程序中,您可能永远不需要这样做。
函数中的参数
参数是在调用函数时传递给函数的值。
换句话说,在调用端,它是一个参数,而在函数端,它是一个参数。
让我们看看 Python Args 是如何工作的——
步骤 1) 参数在函数定义中声明。调用函数时,您可以传递该参数的值,如下所示
步骤 2) 要声明参数的默认值,请在函数定义时为其赋值。
示例: x 没有默认值。 y=0 的默认值。当我们在调用乘法函数时只提供一个参数时,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) 函数来调用多个 args (1,2,3,4,5)。
示例:我们在调用 (*args) 函数时将多个 args 声明为数字 (1,2,3,4,5);它将输出打印为 (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)。示例“打印功能”。
- 在调用端是参数,在函数端是参数
- 参数中的默认值 - 当我们在调用乘法函数或任何其他函数时仅提供一个参数时,Python 默认分配另一个参数
- Python 还可以让您颠倒参数的顺序
Python