Python修炼秘籍--函数和模块化编程(Day6)

一、函数的定义

1、函数

将用于进行某种计算或具有某种功能的一系列语句进行封装并命名,方便其它程序代码调用的子程序。

  • input() 将具有从键盘获取输入的一系列语句打包(封装),命名为input,在需要进行输入操作的地方调用,就可以实现输入功能。
  • pow(x, y) 将计算x的y次方的语句封装,命名为pow,在需要计算幂运算的地方调用,就可以实现幂运算的功能。

函数的作用

  • 减少代码重复,实现代码复用
  • 提高代码可读性,降低维护成本
  • 函数定义格式:
def 函数名([形参表]):
    函数体语句序列
    [return 表达式]    #可选项,即有的函数可以没有返回值。

在这里插入图片描述

  • def:定义函数的保留字,表明接下来要定义一个函数,函数体内的语句都带缩进。
  • 函数名:为下面代码起的一个能简单说明函数功能的名字。符合命名规则,PEP8规范约定函数名一般为小写字母,多个单词间下划线_隔开。应具有一定含义如read_file()get_data()
  • 参数列表:0或多个形式参数,函数调用时,参数名用于接受传入的对象。
  • 文档注释:文档注释字符串,解释函数的参数和功能等信息
  • 返回值:将函数处理的结果通过return后的变量返回给调用函数的地方。

2、函数调用

  • 利用函数实现某些功能
  • 先定义后调用,函数定义放在调用之前
  • 函数调用格式:
函数名([实参表])
  • 说明:
    – 函数必须先定义,后使用;
    – 函数名与变量名的命名规则相同,只能包含字母、数字和下划线_,且不能以数字打头。

● 函数定义时可以有多种参数,也可以没有参数
在这里插入图片描述

● 函数定义时也可以没有return语句
在这里插入图片描述

● 一个return语句后也可以有多个返回值,多个值用一个元组封装后返回
在这里插入图片描述
在这里插入图片描述

● 函数可以有多个return语句
● 当函数有多条返回值语句时,只能执行其中一条
● 执行任意return语句都会结束函数调用
在这里插入图片描述

例1:累加函数
在这里插入图片描述

函数的使用一共分为四个步骤:

  1. 函数定义
  2. 函数调用
  3. 函数执行
  4. 函数返回

二、函数的参数传递

参数类型:位置参数,默认值参数,可变参数

位置参数

  • 按照顺序,把函数调用时的参数对象依次传递给函数定义中的参数。
    在这里插入图片描述

默认值参数

  • 函数的参数在定义时可以指定默认值。当函数被调用时,如果没有传入对应的参数值,则使用函数定义时的默认值替代,必须放置在没有默认值的参数之后。
    在这里插入图片描述
    在这里插入图片描述

可变参数

  • 函数参数的个数不定,既不确定参数总数量,通过参数前增加(*)实现。
    例如max()和min()函数,计算多个参数中的最大最小值。
    在这里插入图片描述

三、变量的作用域

根据程序中变量所在的位置和作用范围,变量分为局部变量和全局变量

1. 局部变量

  • 指在函数内部定义和使用的变量,仅在函数内部有效,函数外不可访问。
    在这里插入图片描述

2. 全局变量

  • 指在函数之外定义的变量,在函数内部、外部都可以访问。
    在这里插入图片描述

若要在函数内部修改全局变量的值,必须用global语句声明。

在这里插入图片描述

在这里插入图片描述

四、函数的递归

函数的递归调用:

  • 函数调用的一种特殊情况。函数自己调用自己,自己再调用自己,自己再调用自己……
  • 当某个条件得到满足的时候就不再调用了,然后再一层一层地返回直到该函数的第一次调用。

例2:计算阶乘

迭代方式在这里插入图片描述
递归方式
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

例3:斐波那契数列求和

在这里插入图片描述
斐波那契数列的定义为:

  • F(0)=F(1)=1,当n为0或1时;
  • F(n)=F(n-1)+F(n-2),当n>=2;

第1步:实现计算斐波那契数列第i项的函数
在这里插入图片描述

第2步:通过for循环累加
在这里插入图片描述

五、Python内置函数

1、内置函数

Python字符使用Unicode编码,每个字符有一个单独对应的编号

  • ord()对单个Unicode字符,返回代表它Unicode码的整数
    在这里插入图片描述

  • chr()返回Unicode码对应的字符,ord()的逆函数
    在这里插入图片描述

  • bin()将一个整数转换为带前缀 “0b” 的二进制数字符串

  • oct()将整数转换为带前缀 “0o” 的八进制数字符串

  • hex()将整数转换为带前缀 “0x” 前缀的小写十六进制数字符串。
    在这里插入图片描述

六、匿名函数

1、lambda函数:匿名函数

  • lambda函数是一种不使用def定义函数的形式,其作用是能快速定义一个简短的函数。

  • lambda函数的函数体只是一个表达式, 所以lambda函数通常只能实现比较简单的功能,返回一些简单的运算结果。

  • lambda函数格式:
    <函数名> = lambda <参数列表>: <表达式>
    等价于

def <函数名>(<参数列表>):
     return <表达式>

在这里插入图片描述
在这里插入图片描述


整理不易🚀🚀,关注和收藏后拿走📌📌欢迎留言🧐👋📣✨
快来关注我的公众号🔎AdaCoding 和 GitHub🔎 AdaCoding123
在这里插入图片描述

  • 26
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Python提供了丰富的日期和时间处理函数,可以方便地进行日期的计算、格式和解析等操作。以下是一些常用的Python日期函数: 1. `datetime`模块:该模块提供了处理日期和时间的类和函数。常用的类有`datetime`、`date`和`time`。可以使用这些类来创建日期对象,并进行日期的计算和格式等操作。 2. `date`类:用于表示日期,包括年、月、日。可以使用`date(year, month, day)`来创建一个日期对象。常用的方法有: - `today()`:返回当前日期。 - `strftime(format)`:将日期对象格式为指定的字符串格式。 - `year`、`month`、`day`:获取日期的年、月、日。 3. `datetime`类:用于表示日期和时间,包括年、月、日、时、分、秒。可以使用`datetime(year, month, day, hour, minute, second)`来创建一个日期时间对象。常用的方法有: - `now()`:返回当前日期时间。 - `strftime(format)`:将日期时间对象格式为指定的字符串格式。 - `year`、`month`、`day`、`hour`、`minute`、`second`:获取日期时间的年、月、日、时、分、秒。 4. `timedelta`类:用于表示时间间隔,可以进行日期的加减运算。可以使用`timedelta(days, seconds, microseconds, milliseconds, minutes, hours, weeks)`来创建一个时间间隔对象。 5. `strptime`函数:用于将字符串解析为日期对象。可以使用`datetime.strptime(date_string, format)`来解析指定格式的字符串为日期对象。 6. `strftime`函数:用于将日期对象格式为字符串。可以使用`datetime.strftime(format)`来将日期对象格式为指定的字符串格式。 以上是一些常用的Python日期函数,可以根据具体需求选择合适的函数来处理日期和时间。如果有具体的问题或者需要更详细的介绍,请告诉我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值