长沙门户网站建设,目录更新 wordpress,北京梵客装饰公司地址电话,saas建站工具目录
1. 函数多返回值
2. 函数多种传参方式
3. 匿名函数
3.1 函数作为参数传递
3.2 lambda匿名函数
4. 文件的读取操作
4.1 open#xff08;#xff09;打开函数
4.2 读操作方法
4.3 文件的写入
4.4 文件的追加
5. 异常的捕获方法
5.1 捕获常规异常
5.2 捕获指定…目录
1. 函数多返回值
2. 函数多种传参方式
3. 匿名函数
3.1 函数作为参数传递
3.2 lambda匿名函数
4. 文件的读取操作
4.1 open打开函数
4.2 读操作方法
4.3 文件的写入
4.4 文件的追加
5. 异常的捕获方法
5.1 捕获常规异常
5.2 捕获指定异常
5.3 捕获多个异常
5.4 捕获异常并输出信息
5.5 捕获所有异常
5.6 异常else
5.7 异常的finally
6. 异常的传递
7. 模块的导入方式
8. 自定义模块
8.1 测试模块if __name__ __main__:
8.2 __all__ 1. 函数多返回值 按照返回值的顺序写多个变量接收变量之间用逗号隔开支持不同类型的数据return。
2. 函数多种传参方式
共有4种常见的传参方式
位置参数关键词参数缺省参数不定长参数
——————————————————
位置参数
位置参数调用函数时根据函数定义的参数位置来传递参数。 注意传递的参数和定义的参数的顺序及个数必须一致。
关键字参数
关键字参数函数调用时通过“键值”的形式传递参数。 由上可知关键字参数不需要参数的顺序一致以键值对的形式传递。
缺省参数
缺省参数缺省参数也叫默认参数用于定义函数为参数提供默认值调用函数时可不传该默认参数的值注意所有位置参数必须出现在默认参数前包括函数定义和调用。
作用当调用函数时没有传递参数, 就会使用默认是用缺省参数对应的值。 注意函数调用时如果为缺省参数传值则修改默认参数值, 否则使用这个默认值。
不定长参数
不定长参数不定长参数也叫可变参数. 用于不确定调用的时候会传递多少个参数(不传参也可以)的场景。
作用当调用函数时不确定参数个数时, 可以使用不定长参数。
不定长参数的传递类型
位置传递关键字传递
位置传递 注意传过去的所有参数都会被args变量收集它会根据传过来的参数的位置合并为一个元组args是元组类型。
关键字传递 注意参数是“键值”的形式所有的“键值”都会被kwargs接收同时组成一个字典。
3. 匿名函数
3.1 函数作为参数传递 这是一种计算逻辑的传递而非数据的传递。
3.2 lambda匿名函数
函数的定义中
def关键字可以定义带有名称的函数lambda关键字可以定义匿名函数无名称
有名称的函数可以通过名字多次使用无名称的匿名函数只可以临时使用一次。
匿名函数定义依法lambda 传入参数函数体一行代码
lambda是关键字表示定义的是匿名函数传入参数表示匿名函数的形参如xy表示接收两个参数函数体就是函数的执行逻辑注意只能写一行无法写多行代码4. 文件的读取操作
4.1 open打开函数
语法opennamemodeencoding
name是要打开的文件名的路径。mode设置打开文件的模式只读、写入、追加。encoding编码格式常用UTF-8。
mode常用的三种访问模式 4.2 读操作方法
read方法
文件对象.readnum
num表示要从文件中读取的数据长度单位是字节如果没有传入num就读取文件中的所有数据。 readlines方法
readlines可以按照行的方式把整个文件中的内容进行一次性读取并且返回的是一个列表其中每一行的数据为一个元素。 readline方法
一次读取一行的内容。 for循环读取文件close关闭文件对象
————————————————————
with open语法
该方法可以在操作完成后自动关闭close文件避免遗忘close方法。 4.3 文件的写入
例子 直接调用write内容并未真正写入文件而是会积攒在程序的内存中称之为缓冲区。当调用flush的时候内容会真正写入文件。这样做是避免频繁的操作硬盘导致效率下降攒一堆一次性写磁盘。
注意用‘w’模式时文件如果不存在则会创建新文件文件如果存在会将原来的所有内容清空。close方法自带flush方法的功能。
4.4 文件的追加 a模式下文件不存在会创建文件a模式下文件存在会在文件的最后追加写入新内容
5. 异常的捕获方法
捕获异常的作用提前假设某处会出现异常做好提前准备当真的出现异常的时候可以有后续的手段。
5.1 捕获常规异常
基本语法
try 可能发生错误的代码
except 如果出现异常时执行的新代码
例如 5.2 捕获指定异常
基本语法
try printname
except NameError as e print“name变量名称未定义错误”
注意
如果尝试执行的代码的异常类型和要捕获的异常类型不一致时则无法捕获异常。一般try下方只放一行尝试执行的代码。
5.3 捕获多个异常
当捕获多个异常时可以把要捕获的异常类型的名字放到except 后并使用元组的方式进行书写。
try print1/0
except NameErrorZeroDivisionError print“ZeroDivision错误。。。”
5.4 捕获异常并输出信息
基本语法
try printnum
except NameErrorZeroDivisionError printe
5.5 捕获所有异常
基本语法 try printnum
except Exception as e printe
5.6 异常else
else表示的是如果没有异常要执行的代码。
try printnum
except Exception as e printe
else print“没有异常执行的代码”
5.7 异常的finally
finally表示的是无论是否异常都要执行的代码例如关闭文件。
try f open(123.txt,r) except Exception as e f open(123.txt,w)
else print“没有异常”
finally f.close
————————————————————————
6. 异常的传递
异常是具有传递性的当所有函数都没有捕获异常的时候程序就会报错。
7. 模块的导入方式
import 模块名导入整个模块 from 模块名 import 功能名导入模块的某个方法 from 模块名 import *导入模块的所有方法 import 模块名 as 别名将模块取个别名 from 模块名 import 功能名 as 别名将模块的某个功能取个别名
8. 自定义模块
每个Python文件都可以作为一个模块模块的名字就是文件的名字. 也就是说自定义模块名必须要符合标识符命名规则。
注意当导入多个模块时且模块中有同名的功能当调用这个功能的时候默认调用到的是最后一个导入的模块的功能。
8.1 测试模块if __name__ __main__:
当一个模块中想要添加一些测试信息时有不想这些测试信息在调用时被运行就用到了我们的测试模块 8.2 __all__
如果一个模块文件中有__all__变量当使用from xxx import *导入时只能导入这个列表中的元素。
当要使用__all__变量之外的功能时可以直接用from 模块 import 功能去导入使用。