翼度科技»论坛 编程开发 python 查看内容

Python教程(14)——Python函数的入门学习

9

主题

9

帖子

27

积分

新手上路

Rank: 1

积分
27
函数是什么?在编程中,函数是一段可重用的代码块,用于完成特定任务或执行特定操作。它可以接输入参数并返回一个值或执行一系列操作。函数可以帮助程序员将代码模块化,提高代码的可读性和可维护性。
函数通常包括以下组成部分:

  • 函数名:用于标识函数,并可以通过函数名调用执行该函数。
  • 参数:输入给函数的值,在函数内部可以使用参数进行操作或计算。
  • 函数体:包含函数执行的代码块。在函数体中可以进行各种操作、计算、逻辑判断等任务。
  • 返回值:函数可以返回处理结果,供调用者使用。
每种编程语言对于函数的语法规范可能所有不同,但是都是包含函数组成部分的。

Python函数组成

Python函数的定义通包括以下几个部分:

  • 函数头部:使用关键字 def 开始,后跟函数名和一对圆括号 ( )。圆括号内可以包含函数的参数,多个参数之间用逗号分隔,最后在右括号)之后要加个冒号:,无论是括号还是冒号一定都要是英文状态下的。
  • 函数体:函数体是由函数的操作逻辑组成的代码块,函数体内的代码需要缩进,通常使用4个空格或制表符(Tab键)进行缩进。
  • 函数返回值:函数可以返回一个值使用关键字 return 后跟要返回的值。
以下是一个简单的示例,展示了一个算两个数之和的函数:
  1. def add_numbers(num1, num2):
  2.         sum = num1 + num2
  3.     return sum
  4. result = add_numbers(5, 3)
  5. print(result)  # 输出:8
复制代码
在这个示例中,函数 add_numbers 接收两个参数 num1 和 num2,计算它们的和并返回结果。通过调用 add_numbers(5, 3) 可以得到结果 8将结果赋值给变 result,最后打印 result 的值。
Python函数解释

上述的add_numbers是个非常简单的函数,但是初学者朋友如果不注意相关规则的话,可能会造成怀疑人生的结果。
正如Python函数的语法组成那样,Python是用def开头来定义一个函数的,然后空格后跟上函数名add_numbers,我们专业一点的叫法的话,叫函数定义,在使用一个函数之前,必须先定义,否则就会报语法错误。
比如我们像下面这样书写,就不行的,会一个NameError的错误。NameError: name 'add_numbers' is not defined。
  1. result = add_numbers(5, 3)
  2. def add_numbers(num1, num2):
  3.     sum = num1 + num2
  4.     return sum
  5. print(result)
复制代码
接着加上括号,括号里面跟上参数名,这里的参数名我们称之为形式参数,简称形参,这个在编程当中是一个比较重要的概念,特别是在C语言当中。然后右括号后面加上一个冒号,后面就另起一行写函数体,当然在一些非常简单的函数体当中,可能直接跟在冒号后面,比如:
  1. if a == 1: return 1
复制代码
在leetcode编程中,这种写法也经常见到。
如果是超过一行的,一般都是另起一行写函数体。函数体内的代码需要缩进,通常使用4个空格或制表符进行缩进。这里要特别注意,在函数体中, 要不都用4个空格,要不就用制表符,千万不要混用 ,一个制表符又刚好等于4个空格,所以从表面上看确实是对齐了,对于没有编程经验的初学者来说,一旦混用,又不懂得利用搜索引擎的话,可能一个晚上你都会困在那里,百思不得其解。
混用的话,一般会报以下错误:
  1. IndentationError: unindent does not match any outer indentation level
复制代码

意思大概就是说你缩进不匹配,大概率就是制表符和空格混用了!但是如果你是用PyCharm等一些高级的IDE,可能这些IDE会自动帮你修正这些对齐的bug,而如果你是从其他编辑器复制代码到PyCharm中的,这些没有对齐的错误并不会自动的修正,还是需要你手动就纠正的,所以还是推荐大家尽量使用PyCharm编写Python代码。
Python函数类型

Python当中有各种类型的函数,像上面那种就是比较普通的自定义函数,顾名思义,就是自己定义的函数。在 Python 中,还有以下几种常见的函数类型。
内置函数

Python 提供了一些内置函数,可以直接使用,不需要导入任何模块,如 print()、len()、type() 等,
匿名函数

匿名函数也称为 lambda 表达式,是一种简洁的函数定义方式,通常用于一次性的简单函数。例如:
  1. multiply = lambda x, y: x * y
  2. result = multiply(3, 5)
  3. print(result)  # 输出 15
复制代码
闭包函数

闭包函数是指在一个函数内部定义了另一个函数,并且内部函数可以访问外部函数的变量。这种函数形式可以用来创建一些特定的函数,例如函数工厂或者装饰器。
  1. def outer_function(x):
  2.     def inner_function(y):
  3.         return x + y
  4.     return inner_function
  5. add_5 = outer_function(5)
  6. result = add_5(3)
  7. print(result)  # 输出 8
复制代码
生成器函数

生成器函数使用 yield 关键字来定义,可以通过迭代器的方式逐步生成结果,而不是一次性生成所有结果。
  1. def fibonacci():
  2.     a, b = 0, 1
  3.     while True:
  4.         yield a
  5.         a, b = b, a + b
  6. fib = fibonacci()
  7. print(next(fib))  # 输出 0
  8. print(next(fib))  # 输出 1
  9. print(next(fib))  # 输出 1
复制代码
这些是 Python 中常见的函数类型,每种类型都有不同的特点和用途,一些比较高级用法的函数,后面学到了我们在来讲,现在只需要了解下就可以了。
更多精彩内容,请关注同名公众:一点sir(alittle-sir)


来源:https://www.cnblogs.com/kiwiblog/p/17726250.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具