Python模块、包、文件、异常、高阶函数

本文围绕Python展开,介绍了模块的概念与导入方式,包是将有联系的模块组织在同一文件夹;阐述了异常处理方法,包括捕获指定、多个及所有异常等;还讲解了文件的打开、关闭与读写操作,以及高阶函数,如map、reduce、filter等内置高阶函数的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、模块

概念 :Python模块(Moudule),是一个Python文件,以.py结尾,包含了Python对象定义和Python语句,模块能定义函数 ,类,变量,也能包含可执行的代码

导入模块-方式一:import模块名

1、语法:模块名.功能名

# 定义模块
#类(属性+方法)、函数、变量、可执行语句

class Person(object):
    def __init__(self):
        self.name="张三"

    def eat(self):
        print("这是模块中的方法")

    def sleep(self,who):
        print(f"正在和{who}睡觉")

# 单独定义函数
def playdd():
    print("这是模块中的函数")


#单独定义模块变量
age =22

# 导入模块
# 方式1  import  模块名
import Snail

# 实例化模块中的类
person  =Snail.Person()
person.eat()
print(person.name)
person.sleep("易烊千玺")

Snail.playdd()
print(Snail.age)

在这里插入图片描述

2、form 模块名 as 别名

# 导入模块
# 方式1  import  模块名
# import Snail
import Snail as a


# 实例化模块中的类
person  =a.Person()
person.eat()
print(person.name)
person.sleep("易烊千玺")

a.playdd()
print(a.age)

在这里插入图片描述

方式二:form模块名 import 功能名

from 模块名 import 功能名 as 别名

# 方式二: from 模块名 import 功能
from Snail import Person
from Snail import playdd
from Snail import age
person= Person()
person.sleep("张起灵")

playdd()
print(age)

在这里插入图片描述

方式三:from模块名 import *

1、使用模块 语法:功能

from Snail import *
person= Person()
person.sleep("迪丽热巴")

在这里插入图片描述

2、__all__列表

__all__=["Person","playdd"]
playdd()

在这里插入图片描述

二、包

概念:包将有联系的模块组织在一起,放在同一个 文件夹下,这个文件夹几句称之为包

1、import 包名.模块名

import MyPackage.Snail
person=MyPackage.Snail.Person()
person.sleep("宝贝")

在这里插入图片描述
2、import 包名.模块名 as 别名

import MyPackage.Snail as s
person=s.Person()
person.sleep("宝贝")

在这里插入图片描述
3、from 包名.模块名 import 功能名

from MyPackage.Snail import Person
person=Person()
print(person.name)

在这里插入图片描述
4、from 包名 import *

from MyPackage import *
person =Snail.Person()
person.sleep("撒旦")

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

三、异常

处理异常
1、捕获指定异常类型

try:
	可能发生错误的代码
except 异常类型:
	如果出现异常执行的代码

2、捕获多个指定异常

try:
	可能发生错误的代码
except (异常类型1、异常类型2):
	如果出现异常执行的代码

3、捕获所有异常

try:
	可能发生错误的代码
except Exception:
	如果出现异常执行的代码

4、异常的捕获信息

try:
	可能发生错误的代码
except 异常类型 as result:
	如果出现异常执行的代码
#result为异常的信息

异常的else

try:
	可能发生错误的代码
except Exception:
	如果出现异常执行的代码
else:
	没有异常时执行的代码

异常的finally

try:
	可能发生错误的代码
except Exception:
	如果出现异常执行的代码
else:
	没有异常时执行的代码
finally:
	无论是否有异常都要执行的代码

自定义异常
1、自定义类继承exception

重写__init__
重写__str__ 设置抛出异常的描述信息

2、使用【raise自定义异常类】捕获异常

四、文件

打开文件

在Python文件中,使用open()函数,可以打开一个已经存在的文件,或者创建一个新文件

f=open("readme.txt","w",encoding="UTF-8")

在这里插入图片描述

name:是要打开的目标文件名的字符串(可以包含文件所在的具体路径)
mode:设置打开文件的模式(访问模式),只读、写入、追加等,主要为"r",“w”,“a”

关闭文件

f.close()

文件读写

content = f.read()
print(content)

在这里插入图片描述
只读取一行

content=f.readline()
print(content)

在这里插入图片描述
读取整体

content=f.readlines()
print(content)

在这里插入图片描述

五、高阶函数

把函数作为参数传入,这样的函数称为高阶函数,高阶函数是函数式编程的体现

内置函数

abs():对数字求绝对值

round():数字的四舍五入

内置高阶函数
map()

map(func,lst):将传入的函数变量func作用到lst变量的每个元素中,并将结果组成新的列表(Python2)迭代器(Python3)

reduce()

reduce(func,lst)其中func必须有两个参数,每次func计算的结果继续和序列的下一个元素做累计计算

在使用reduce()函数之前,必须导入模块functools

filter

filter(func,lst)函数用于过滤序列,过滤到不符合条件的元素,返回一个filter对象,可将其转换成list

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值