异常处理
在Python中,异常是指程序运行期间发生了一些错误或异常情况,导致程序无法正常执行。如果不进行异常处理,程序会崩溃并报错。Python中提供了异常处理机制,可以在异常发生时捕获并处理异常,让程序更加健壮和稳定。
try...except
语句
try...except
语句用于捕获异常,可以指定一段代码在出现错误时执行特定的操作,而不让程序崩溃。try
后面跟随可能会出现异常的语句块,except
后面跟随处理异常的代码块。可以根据需要指定处理不同类型的异常。
try:
num = int(input("请输入一个整数:"))
result = 10 / num
print("10除以{}的结果是{}".format(num, result))
except ValueError:
print("值错误!请输入一个整数。")
except ZeroDivisionError:
print("除数不能为0。")
except Exception as e:
print("出现了异常:", e)
以上代码使用了多个except
语句来处理不同类型的异常。如果代码块中出现了没有指定的异常类型,则会执行最后一个except
语句。可以使用as
关键字指定异常对象,并在处理代码块中使用。
try...except...else
语句
try...except...else
语句在try
语句块中没有发生异常时执行else
语句块中的代码。一般来说,可以使用这个语句块来处理没有异常情况下的操作,增强代码的可读性。
try:
num = int(input("请输入一个整数:"))
result = 10 / num
except ValueError:
print("值错误!请输入一个整数。")
except ZeroDivisionError:
print("除数不能为0。")
except Exception as e:
print("出现了异常:", e)
else:
print("10除以{}的结果是{}".format(num, result))
try...except...finally
语句
try...except...finally
语句不管try
语句块中是否发生了异常,都会执行finally
语句块中的代码。一般可以使用finally
语句块来进行一些资源的清理工作,例如关闭文件和数据库连接等。
try:
f = open("myfile.txt", "w")
f.write("Hello world")
except Exception as e:
print("文件写入时发生了异常:", e)
finally:
f.close()
模块
在Python中,模块是一系列Python代码的集合,可以重复使用和引用。Python模块是Python文件,文件名即为模块名,模块名不能以数字开头。
导入模块
可以使用import
语句来导入模块。Python中常用的导入方式有以下几种:
import module # 导入整个模块
from module import object # 导入模块中的某个对象
from module import * # 导入模块中所有对象
模块搜索路径
在Python中,解释器会在内置模块的搜索路径和PYTHONPATH
环境变量指定的路径中搜索模块。可以使用sys
模块中的sys.path
变量来查看模块搜索路径。
import sys
print(sys.path)
创建自己的模块
可以在Python中创建自己的模块,并在其他程序中使用。可以在模块中定义函数、变量和类等,并将代码保存为.py
文件。将模块放在Python搜索路径下的一个目录中,就可以在其他程序中导入这个模块了。
示例代码如下:
# mymodule.py
def hello(name):
print("Hello, {}!".format(name))
在其他程序中导入这个模块: