python函数怎么写(python 函数)

python函数怎么写(python 函数)编写程序时 经常用到一些条件或判断 需要用到 if 语句 它的字面意思是 如果 if 满足条件 做什么 否则 else 做什么 例如 下面一段代码 这段代码的意思是 如果 a 比 10 大 则输出 Value of a is greater than 10 否则输出



编写程序时,经常用到一些条件或判断,需要用到 if 语句,它的字面意思是:如果(if)满足条件,做什么,否则(else)做什么。例如,下面一段代码:

 
 

这段代码的意思是,如果 a 比 10 大,则输出 “Value of a is greater than 10”,否则输出 “Value of a is not greater than 10”。if 语句还可以跟 elif (else if 的意思),再次判断一个条件。

if 语句的一般用法if 条件1:    statement_block_1elif 条件2:    statement_block_2else:    statement_block_3

上面 if 语句块的执行顺序为:如果条件1 为真,将执行 “statement_block_1” 块语句,如果条件1 为假,将判断 “条件2”,如果条件2 为真,将执行 “statement_block_2” 块语句,如果条件2 为假,将执行"statement_block_3"块语句。举例:

 
 

上面语句的意思是,若输入的月薪小于 3000,则输出“贫困户”,否则若月薪在 3000 与 12000 之间,输出“平均水平”,若月薪在 12000 之上,则输出“土豪”。if 语句里面还可以嵌套 if 语句,进一步增加判断条件,举例:

 
 

在上面的程序中,若月薪小于等于 3000,又嵌套了两个条件进一步判断。

if 中条件判断中常用的符号有:>(大于), <(小于), >=(大于等于), <=(小于等于), ==(等于), !=(不等于)。需要注意的是,在编程语言的判断语句中,两个等号 == 表示判断是否相等(a == 3 表示判断 a 是否等于 3),而一个等号 = 表示的是变量赋值(a = 3 表示将 a 赋值为 3)

循环语句一般有两种,for 语句与 while 语句。for 循环可以遍历任何序列的项目,如一个列表、元组、集合或者一个字符串。for 循环的一般用法如下:

for 循环语句的一般用法for variable in sequence:    statements

for 循环的作用是:遍历序列(sequence)中的所有元素,执行命令语句 statements,举例:

 
 

输出结果为 0, 1, 2,上述代码的作用是,对于 range(3) 中的每一个元素,打印元素。for 循环经常结合序列函数 range() 一起使用:range(a) 表示从 0 到 a-1 的一个数列,range(a, b) 表示从 a 到 b-1 的一个数列,range(a, b, c) 表示从 a 到 b-1,步长为 c 的一个数列。

另一个 while 循环语句的一般格式为:

while 循环语句的一般用法while  判断条件:       statements

它的作用是,只要满足 while 的判断条件,则一直执行 while 下面的执行语句 statements,举例:

 
 

上面语句的作用是:只要 a 小于 4,则将 a 值打印出来并将 a 值加 1,在 a 等于 4 时停止执行 while语句。

for 循环与 while 循环经常结合或语句,语句可以跳出循环体,而语句用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。举例:

 
 

上面代码中,在 i 等于 1 时执行跳出了整个循环体。

若改为语句:

 
 

上面代码中,在 i 等于 1 时执行跳出了当前循环,执行剩下的循环。

在 while 循环中,与的例子:

 
 
 
 
 

Python 提供了许多内建函数,比如 print(),但也可以自己创建函数,这被叫做用户自定义函数。掌握了自定义函数后,就能用 Python 实现很多自己想要的功能了。Python 自定义函数使用关键字,一般用法如下:

def 自定义函数的一般用法def 函数名(参数列表):       statements

下面的几行代码定义了一个加和函数:

 

该自定义函数有以下几个特点:

def关键字 def 开头add 函数的名字,可以自命名(x1, x2)小括号里面是函数的输入参数:冒号,换行写函数内容;若不换行,整个函数只能有一行代码return关键字,后面跟函数的返回值,即输出结果

函数的返回值可以有一个或多个,下面的代码返回多个值,既返回两个参数的加和结果,又返回两个参数的值。

 

调用函数时,通过输入函数名字,并把函数的参数传递进去,例如:

 
 

在多个返回值时,有时候需要用新的变量表示各个返回值,可以用下面的方式赋值:

 
 

若某个返回值不使用,可以用下划线替代该变量名。

 
 

上面的代码中,用下划线替代第二个返回参数值,用新的变量名替代其他参数值。

函数也可以不带输入参数,即小括号里面可以没有内容,例如,下面的代码打印一句话 ``Hello, world!":

 
 

函数参数的传递类型

根据输入参数的值是否可以改变,函数的参数传递类型包括以下两种:

  • 不可变类型:数字,字符串,元组
  • 可变类型:列表,字典,集合
 
 
 

上面的代码中,由于传递的是数字类型,调用函数后,参数原来的数值不变,对于字符串或元组类型,传递时也是这样。

对于可变类型,函数调用参数后,参数原来的值也改变,例如:

 
 

函数的参数传入方法

函数的参数传入方法主要有4种类型:

  • 顺序传入
  • 赋值传入
  • 默认参数值传入
  • 不定长参数传入

对于顺序传入,函数的参数值跟输入的顺序一一对应:

 
 

在上面的代码中,调用 minus 函数,按照参数的顺序,认为 x1 的值为 10, x2 的值为 6。

赋值传入的意思是:在调用函数时,可以在输入参数时直接给参数赋值,Python 自动根据括号内的参数名匹配参数值,例如:

 
 

在上面的代码中,调用 minus 函数时,在小括号内对参数进行了赋值,认为 x2 的值为 10, x1 的值为 6。

Python 在定义函数时,可以设置参数的默认值,当调用参数时,若没有给参数赋值,则使用参数的默认值,例如:

 
 

当一个函数传递多个参数,但不太确定究竟是多少个时,可以用 *args 表示多个参数,例如:

 
 

可以用 **args 来传递不定长的多个赋值的参数,例如:

 
 

上面的代码中,用 **args 表示 x2 = 3, x3 = 5。

Python 使用来创建匿名函数。所谓匿名,即不再使用 def 语句这样标准的形式定义一个函数。lambda 函数只有一行,用一个冒号分割传递参数与函数的返回值。非常简洁,在 Pandas 处理数据时经常结合 apply 函数使用。

 
 

也可以结合 if-else 语句定义 lambda 函数。

 
 

对每一个可迭代对象 iter 中的元素应用 fun 函数,并返回一个 map 类型的可迭代对象。fun 函数既可以使用 lambda 匿名函数,也可以用 def 自定义一个函数。

 
 

可以用函数将这个可迭代对象转化为 list 类型:

 
 
 
 
 

首先对可迭代对象 iter 中的前两个元素应用函数 fun,然后将其结果作为 fun 的第一个输入值,再对第 3 个元素应用 fun 函数;以此类推,最后返回一个数。使用 reduce 函数需要从工具包 functools 中提前导入。

 
 

也可以跟 3 个参数,即。此时,首先对一个初始值 start 与可迭代对象 iter 中的第一个元素应用函数 fun,然后将其结果作为 fun 的第一个输入值,再对第 2 个元素应用 fun 函数;以此类推,最后返回一个数。

 
 
 

在编写程序时,有时候不知道程序能否正确运行,想试试程序运行结果如何,可以使用 try-except语句;若 try 块中的语句无法执行通过,则执行 except 块中的语句。

这个语句在程序调试时经常使用,下面的代码定义了一个除法函数:

 
 

上面的代码中,若 x1 能除以 x2,则输出除法结果,否则提示 x2 不能为零。

Python 还有一个关键字,不执行任何命令。一般用做占位语句,在程序调试时可以使用。

 
 
 

Python 内置了一些常用的函数,可以方便使用。本书简单介绍以下几个内置函数:

sum对可迭代对象(如列表,元组,集合)求和max返回输入参数中的最大值min返回输入参数中的最小值abs返回输入数值的绝对值round返回输入数值的四舍五入值range创建一个整数序列类型,多用于 for 循环enumerate将一个可迭代的对象,同时列出各个数据和对应索引,常用在 for 循环中sorted对可迭代对象进行排序,默认升序
 
 
 
 

range 被 Python 直接视为一种数据类型,表示一个整数数列。包含终点(必有),起点(可选),步长(可选)。可以用将 range 类型转化为列表类型。

 
 
 
 
 
 
 
 
 

eumerate 经常结合 for 循环使用。

 
 

使用 enumerate 则上述代码更简洁些:

 
 

sorted 函数可以对可迭代对象进行排序,默认为升序,可迭代对象一般是列表。

 
 
 

                    
编程小号
上一篇 2025-02-21 10:01
下一篇 2025-03-21 13:46

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/17030.html