目录

  • 1 绪论
    • 1.1 Python简介
    • 1.2 Python的安装和使用
    • 1.3 Python的集成开发环境
    • 1.4 Python的发展历程
  • 2 Python语法基础
    • 2.1 关键字
    • 2.2 标识符
    • 2.3 变量
    • 2.4 基本数据类型
    • 2.5 运算符和表达式
    • 2.6 标准输入和输出
    • 2.7 良好的编程习惯
    • 2.8 编程实现《少年中国说》(节选)词频统计
  • 3 流程控制
    • 3.1 顺序结构
    • 3.2 选择结构
    • 3.3 循环结构
    • 3.4 编程模拟天天向上学习打卡系统
  • 4 高级数据类型
    • 4.1 集合
    • 4.2 元组
    • 4.3 列表
    • 4.4 字典
    • 4.5 编程模拟系统中先来先服务进程调度算法
  • 5 函数
    • 5.1 函数的使用
    • 5.2 变量的作用域
    • 5.3 递归函数
    • 5.4 编程模拟花样滑冰计分系统
  • 6 文件和目录操作
    • 6.1 文件的概念
    • 6.2 文件的常用操作
    • 6.3 文件与目录操作
    • 6.4 编程模拟《中国诗词大会》个人追逐赛
  • 7 异常处理
    • 7.1 异常的概念
    • 7.2 异常处理
    • 7.3 断言
    • 7.4 编写程序对登录用户名和密码进行校验
  • 8 常用库
    • 8.1 Turtle库
    • 8.2 Math库
    • 8.3 Random库
    • 8.4 Time库
    • 8.5 Numpy库
    • 8.6 Pandans库
    • 8.7 Jieba库
    • 8.8 第三方库的获取和安装
函数的使用

1 内置函数

为方便用户使用,Python提供了许多内置函数,可以直接使用。(见PPT表示)

2 自定义函数

1)函数定义,语法格式为:

    def func_name([arguments]):

        statement(s)

        [return expression]

函数由函数头和函数体组成。函数头包括def关键词、函数名称、参数列表;函数体包括函数执行的语句,使用缩进表示函数体代码块。

2)函数调用,语法格式为:

    func_name(par1,par2,…)

其中,func_name为预先定义的函数名,括号内为实参,函数定义不执行,需要函数调用才执行。

3)形式参数和实际参数

形参是函数定义时函数名后括号中的参数,用来接收函数调用时传入的具体数据;实参是函数调用时函数名后括号中的参数,用于向形参传递具体的值。实参个数和顺序必须与形参保持一致。

4)参数传递

· 值传递:传入的参数不可变类型,如数字、字符串等。对形参的操作不会影响实参。

· 引用传递:传入的参数是可变类型,如列表、字典等。对形参的操作会改变实参值。

3 函数的特殊参数

1)默认参数

定义函数时在参数列表最后用“=”为参数设置默认值,调用时,没有实参传入则使用默认值,有实参传入则使用实参。

2)关键字参数

函数调用时实参个数和顺序应一致,若想顺序不一致可以使用关键字参数形式:“形参名=实参值”。

3)可变长参数

· 可变长元组参数。语法格式为:def func_name(formal_args,*args):

其中,普通形参formal_args在前,可以多个;可变长元组参数*args在后,只能有一个。

· 可变长字典参数。语法格式为:def func_name(formal_args,**kwargs):

其中,formal_args在前,可变长字典参数**kwargs在后,只能一个,传入“关键字=值”实参。

· 可变长混合参数。语法格式为:def func_name(formal_args,*args,**kwargs):

其中,参数顺序不能变,传入实参时,先配普通形参个数,超过的不带关键字按元组存放,带关键字按字典存放。

4 lambda 函数

如果函数在程序中只调用一次,可使用lambda函数。定义的同时调用该函数,语法格式为:

    Lambda [arg1[,arg2,…,argN]]:expression

其中,lambda为匿名函数关键字,冒号前为参数(可选),冒号后为表达式(只能占用一行)。

· filter函数用于过滤序列中不符合条件的元素,返回符合条件元素的新列表。语法格式为:

    filter(function,iterable)

如:>>>fil=filter(lambda x:x>10,[1,11,2,45,7,6,13])

    >>>print(list(fil))    # 结果为:[11,45,13]

· map函数返回将function应用于iterable中每一项并输出其结果。语法格式为:

    filter(function,iterable,…)

如:>>>mp=filter(lambda x,y:x+y,[1,3,5,7,9],[2,4,6,8,10])

    >>>print(list(mp))    # 结果为:[3,7,11,15,19]