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