Python基础第八篇(Python异常处理,模块与包)

简介: Python基础第八篇(Python异常处理,模块与包)

在这篇博文中,我们将深入研究Python中异常处理、模块和包的使用。文章结构清晰,内容丰富,并详细地分析了Python的异常处理机制,充分解释了如何捕获和传递异常,以及提供了直观易懂的代码示例。然后,我们将介绍Python模块的概念和使用,无论是内置模块还是自定义模块,以及详细演示了如何导入和利用模块。紧接着,文章会带领读者一起学习如何自定义包和安装第三方包,最后,文章通过一组合并使用Python异常处理、模块和包的案例,使读者能够更好地理解和掌握这些知识。这是一篇适合初级到中级Python开发者阅读的文章,无论您是新手还是有经验的开发者,都能从中受益。

一、了解异常

二、捕获异常

(1).异常案例代码

代码如下(示例):

#捕获所有异常
try:
    f = open("E:/testss.txt", "r", encoding="utf-8")
except Exception as e:
    print("出现异常了")
# else:非异常
try:
    f = open("E:/testss.txt", "r", encoding="utf-8")
except Exception as e:
    print("出现异常了")
else:
    print("没有异常")
# finally:异常的finally
try:
    f = open("E:/testss.txt", "r", encoding="utf-8")
except Exception as e:
    print("出现异常了")
else:
    print("没有异常")
finally:
    f.close()

(2).读出结果

代码如下(示例):

出现了变量未定义的异常
出现了变量未定义 或者 除以0的异常错误
出现异常了
出现异常了
出现异常了

三、异常的传递

(1).异常传递案例代码

代码如下(示例):

# 定义一个出现异常的方法
def func1():
    print("func1开始执行")
    num = 1/0 #除以0肯定异常
    print("func1 结束执行")
# 定义一个无异常的方法,调用以上的方法
def func2():
    print("func2开始执行")
    func1()
    print("func2 结束执行")
# 定义一个方法,说明以上的方法
def main():
    try:
        func2()
    except Exception as e:
        print(f"出现了异常,异常的信息是:{e}")
main()

(2).读出结果

代码如下(示例):

func2开始执行
func1开始执行
出现了异常,异常的信息是:division by zero

四、Python模块

(1).模块的导入

(1).异常传递案例代码

代码如下(示例):

# 演示Python的模块导入
"""
"""
# 使用import导入time的sleep功能(函数)
import time  #导入Python内置的time模块(time.py这个代码文件)
print("Hello Woid")
time.sleep(5)  #暂停5秒
print("Goodbye")
# 使用from导入time的sleep功能(函数)
from time import sleep
print("你好")
time.sleep(5)  #暂停5秒
print("我好")
# 使用 * 导入time的全部功能(函数)
from time import *  # * 表示全部的意思
print("你好")
time.sleep(5)  #暂停5秒
print("我好")
# 使用 as 给特定的功能加上别名
import time as t
print("你好")
t.sleep(5)
print("我好")
from  time import sleep as sl
print("你好")
t.sl(5)
print("我好")

(2).读出结果

代码如下(示例):

Hello Woid
Goodbye
你好
我好
你好
我好
你好
我好
你好
我好

(2).自定义模块

(1).异常传递案例代码

代码如下(示例):

# 演示Python的模块导入
"""
"""
# 导入自定义模块使用
from my_module1 import test
print(test(1, 2))
# 导入不同模块的同名功能
from my_module1 import test
from my_module2 import test
print(test(1, 2))
# ——main——安装
from my_module2 import test
# ——all——安装
from my_module2 import *
print(test(1, 2))

(2).读出结果

代码如下(示例):

3
-1
-1

五、Python包

(1).自定义包

(2).安装第三方包

(1).方法一

检验是否安装成功

(2).方法二

六、Python异常处理,模块与包综合案例

file_util.py >代码如下(示例):

def print_file_info(file_path):
    f = open(file_path, "r", encoding="utf-8")
    print(f"读取全部字节的结果是:{f.read()}")
def append_to_file(file_name,data):
    f = open(file_name, "a", encoding="utf-8")
    f.write(f"\n{data}")
if __name__ == '__main__':
    print_file_info("E:\测试.txt")
    append_to_file("E:\测试.txt","写于2024年1月22日")

str_util.py >代码如下(示例):

def str_reverse(s):
    return s[::-1]
def substr(s,x,y):
    return s[x:y:]
if __name__ == '__main__':
    print(str_reverse("河南科技学院"))
    print(substr("Python是最简洁的编程语言", 6, 15))

file_util.py.读出结果

读取全部字节的结果是:欢迎来到我们的Python学习专栏。在这里,我们将一起探索Python这门强大、灵活、易于学习的编程语言。
Python已经成为数据科学、人工智能、网页开发等各种计算领域的首选语言,而且在事实上,无论你是初学者还是有经验的开发者,你都能从中找到乐趣和价值。
........
写于2024年1月22日

str_util.py 读出结果

院学技科南河
是最简洁的编程语言
相关文章
|
4天前
|
Java 程序员 开发者
Python的gc模块
Python的gc模块
|
7天前
|
数据采集 Web App开发 JavaScript
python-selenium模块详解!!!
Selenium 是一个强大的自动化测试工具,支持 Python 调用浏览器进行网页抓取。本文介绍了 Selenium 的安装、基本使用、元素定位、高级操作等内容。主要内容包括:发送请求、加载网页、元素定位、处理 Cookie、无头浏览器设置、页面等待、窗口和 iframe 切换等。通过示例代码帮助读者快速掌握 Selenium 的核心功能。
37 5
|
8天前
|
Python
SciPy 教程 之 SciPy 模块列表 13
SciPy教程之SciPy模块列表13:单位类型。常量模块包含多种单位,如公制、二进制(字节)、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例代码展示了如何使用`constants`模块获取零摄氏度对应的开尔文值(273.15)和华氏度与摄氏度的转换系数(0.5556)。
12 1
|
8天前
|
XML 前端开发 数据格式
超级详细的python中bs4模块详解
Beautiful Soup 是一个用于从网页中抓取数据的 Python 库,提供了简单易用的函数来处理导航、搜索和修改分析树。支持多种解析器,如 Python 标准库中的 HTML 解析器和更强大的 lxml 解析器。通过简单的代码即可实现复杂的数据抓取任务。本文介绍了 Beautiful Soup 的安装、基本使用、对象类型、文档树遍历和搜索方法,以及 CSS 选择器的使用。
22 1
|
9天前
|
Python
SciPy 教程 之 SciPy 模块列表 9
SciPy教程之常量模块介绍,涵盖多种单位类型,如公制、质量、角度、时间、长度、压强等。示例展示了如何使用`scipy.constants`模块查询不同压强单位对应的帕斯卡值,包括atm、bar、torr、mmHg和psi。
10 1
|
5天前
|
Python
SciPy 教程 之 SciPy 模块列表 16
SciPy教程之SciPy模块列表16 - 单位类型。常量模块包含多种单位,如公制、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例代码展示了力学单位的使用,如牛顿、磅力和千克力等。
10 0
|
6天前
|
JavaScript Python
SciPy 教程 之 SciPy 模块列表 15
SciPy 教程之 SciPy 模块列表 15 - 功率单位。常量模块包含多种单位,如公制、质量、时间等。功率单位中,1 瓦特定义为 1 焦耳/秒,表示每秒转换或耗散的能量速率。示例代码展示了如何使用 `constants` 模块获取马力值(745.6998715822701)。
10 0
|
6天前
|
JavaScript Python
SciPy 教程 之 SciPy 模块列表 15
SciPy教程之SciPy模块列表15:单位类型。常量模块包含多种单位,如公制、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。功率单位以瓦特(W)表示,1W=1J/s。示例代码展示了如何使用`constants`模块获取马力(hp)的值,结果为745.6998715822701。
11 0
|
8天前
|
Python
SciPy 教程 之 SciPy 模块列表 13
SciPy 教程之 SciPy 模块列表 13 - 单位类型。常量模块包含多种单位:公制、二进制(字节)、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例:`constants.zero_Celsius` 返回 273.15 开尔文,`constants.degree_Fahrenheit` 返回 0.5555555555555556。
9 0
|
8天前
|
Python
SciPy 教程 之 SciPy 模块列表 11
SciPy教程之SciPy模块列表11:单位类型。常量模块包含公制单位、质量单位、角度换算、时间单位、长度单位、压强单位、体积单位、速度单位、温度单位、能量单位、功率单位、力学单位等。体积单位示例展示了不同体积单位的换算,如升、加仑、流体盎司、桶等。
9 0