Python学习笔记day3
·
一、函数
1.1 初识函数
函数:是组织好的,可以重复使用的,用来实现特定功能的代码段。
使用内置函数len,计算字符段长度:
name = "我要吃红烧鸡翅" length = len(name) print(length)
不使用内置函数len,计算字符段长度

若需要计算多个字符串的长度,每统计一个字符串的长度都需要写一个for循环,非常麻烦,代码冗余,可以使用函数来进行优化。

思考?为什么要学习使用函数?
为了得到一个针对特定需求,可供重复利用的代码段,提高程序的复用性 ,减少重复性代码,提高开发效率。
1.2 函数介绍
1.2.1 函数定义语法格式
def 函数名(传入的参数):
函数体
return 返回值
1.2.2 函数使用语法格式
函数名(参数)
1.2.3 函数参数
函数传入参数功能:在函数进行计算的时候,接收外部(调用时)提供的数据。
函数定义语法格式:
def 函数名(传入的参数):
函数体
函数传入的参数:函数传入参数的数量是不受限制的。
(1)可以不使用参数
(2)也可以使用N个参数
需求:要求使用函数完成两个数据相加的功能

函数解析:
1、函数定义中,提供的x和y,称之为:形式参数(形参),表示函数声明将要使用2个参数,参数之间使用逗号分隔。
2、函数使用中,提供的4和4,称之为:实际参数(实参),表示函数执行的时候真正使用的参数值,传入的时候,按照顺序传入数据,使用逗号分隔。
1.2.4 函数返回值
1.函数返回值的定义
函数返回值:就是程序中函数完成事情后,最后给调用者的结果。
函数返回值语法格式:
def 函数名(参数......):
函数体
return 返回值
函数使用语法格式:
变量名 = 函数名(参数.....)

None类型 思考?如果函数没有使用return语句返回数据,那么函数有返回值吗? 有的 python中有一个特殊字面量:None,其类型是:<class 'NoneType'> 无返回值的函数,实际上就是返回了None字面量
None:表示空的,无实际意义的, 函数返回None,就表示这个函数没有返回什么有意义的内容,也就是返回空的意思。
None类型的使用场景:
1、用在函数无返回值
2、用在if判断上
(1)在if判断中None相当于False
(2)一般用在函数中主动返回None,配合if判断做相关处理
3、用于声明无内容的变量上
(1)定义变量,但暂时不需要变量有具体的值,可以用None类型

1.2.6 函数说明文档
函数是纯代码语言,想要理解其含义就需要一行行去阅读理解代码,效率比较低 可以给函数添加说明文档,辅助理解函数的作用。
函数说明文档语法格式:
def func(x,y):
"""
函数说明
:param x: 形参x的说明
:param y: 形参y的说明
:return: 返回值
"""
函数体
return 返回值

1.2.7 函数的嵌套使用
函数嵌套调用:指的是一个函数里面又调用了另外一个函数, 执行流程:如果函数A中,调用另外一个函数B,那么先把函数B中的任务都执行完毕之后才会回到上次函数A执行的地方继续执行

1.2.8 变量的作用域
变量的作用域(作用范围):变量作用域指的是变量的作用范围(变量在哪里可用,哪里不可用) 变量的作用域分类: 局部变量:在函数体内部的变量,即只在函数体内生效 局部变量作用:在函数体内部,临时保存数据,即当函数调用完后,则销毁局部变量 全局变量:指的是在函数体内、外都能生效的变量 global 关键字:可以在函数体内部声明变量为全局变量
在函数内修改全局变量

综合练习
综合案例:ATM
定义一个全局变量:money,用来记录银行卡余额(默认余额为:60000000)
定义一个全局变量:name,用来记录客户姓名(程序启动时输入)
定义如下函数:
查询余额函数
存款函数
取款函数
主菜单函数
要求:
程序启动后要求输入客户姓名
查询余额、存款、取款后都会返回主菜单
存款、取款后,都应显示一下当前余额
客户选择退出或者输入错误,程序会退出,否则会一直运行
主菜单效果:
---------------------主菜单-----------------------------
xxxx,您好,欢迎来到ATM。请选择操作:
查询余额 【请输入1】
存款 【请输入2】
取款 【请输入3】
退出 【请输入4】
请输入您的选择:
查询余额的效果:
---------------------查询余额-----------------------------
xxxx,您好,您的余额剩余:60000000元
存、取款效果:
---------------------存款-----------------------------
xxxx,您好,你存款50000元成功!
xxxx,您好,您的余额剩余:60050000元.
---------------------取款-----------------------------
xxxx,您好,你取款50000元成功!
xxxx,您好,您的余额剩余:60000000元.


二、 数据容器
2.1 数据容器
数据容器:一种可以容纳多份数据的数据类型,容纳的每一份数据称之为一个元素,每一个元素,可以是任意类型的数据,如:字符串、数字、布尔等。 数据容器的分类: 列表(List)、元组(Tuple)、字符串(Str)、集合(Set)、字典(dict)
2.2 列表
2.2.1 列表的定义
列表定义语法格式: 1、字面量 [元素1,元素2,元素3,元素4,元素5,元素6,.....] 2、定义列表变量 变量名称 = [元素1,元素2,元素3,元素4,元素5,元素6,.....] 3、定义空列表 变量名 = [] 变量名 = list()
注意:列表可以一次存储多个数据,且可以为不同类型的数据,支持嵌套
2.2.2 列表的索引
列表的每一个元素,都有编号,称之为下标索引。 列表的正向索引:从前向后方向,编号从0开始。 语法格式: 列表[下标索引] 列表的反向索引:从后向前方向,编号从-1开始。 语法格式: 列表[下标索引] 嵌套列表的下标索引语法格式: 列表[外层标号][内层标号]

2.2.3 列表的常用操作
如:插入元素、删除元素、清空列表、修改列表、统计元素个数等常用功能。
1、列表的查询功能 查询某元素的下标 语法:列表.index(元素):查找指定元素在列表中的下标,如果找不到,则报错:ValueError

2、修改特定位置(索引)的元素值 语法:列表[下标] = 值 :直接对指定下标(正向、反向下标)的值进行重新赋值(修改)

3、插入元素 语法:列表.insert(下标,值):在指定的下标位置,插入新的元素

4、追加元素 语法:列表.append(元素):将指定元素追加到列表的末尾。
5、追加元素2 语法:列表.extend(其他数据容器):将其他数据容器内容取出,依次追加到列表的末尾

6、删除元素 语法1:del 列表[下标]

语法2:列表.pop(下标)

7、删除某元素在列表中的第一个匹配项 语法:列表.remove(元素)

8、清空列表内容 语法:列表.clear()

9、统计列表中元素的个数 语法:len(列表)

总结:
列表的特点
1、可以容纳多个元素
2、可以容纳不同数据类型的数据(混装)
3、数据是有序存储的(下标索引)
4、允许重复数据存在
5、可以修改(增加删除....)
更多推荐




所有评论(0)