目录
- 一、os模块
- [二、异常处理 try except](#二、异常处理 try except)
-
- 2.1、语法格式1:
- 2.2、语法格式2:指定异常类别,捕获异常
- [2.3、语法格式3:try-finally 语句无论是否发生异常都将执行最后的代码。](#2.3、语法格式3:try-finally 语句无论是否发生异常都将执行最后的代码。)
- 2.4、主动抛出异常raise
一、os模块
os模块----》对文件目录进行操作 -----》实现对文件目录操作与管理
1.1、常用方法
方法 | 描述 |
---|---|
os.getcwd ( ) | 获取当前.py文件所在的项目路径 |
os.path.dirname (path) | 返回文件上一级路径 |
os.path.join(path1,path2) | 连接两个部分的路径,组成一个完整的路径 |
os.path.abspath(path) | 获取绝对路径 |
os.path.split(path1) | 路径拆分,拆成目录+文件 |
1.2、其他方法(了解即可)
方法 | 描述 |
---|---|
os.chdir() | 切换工作路径 |
os.mkdir() | 在某个目录下创建一个新目录 |
os.rmdir() | 删除一个目录 |
os.listdir() | 获取当前路径下的目录列表,返回列表格式数据 |
os.path.isdir() | 判断当前文件是否是目录,返回布尔值 |
os.path.isfile() | 判断当前文件是否是文件,返回布尔值 |
二、异常处理 try except
可以使用try except语句来捕获所有异常
2.1、语法格式1:
bash
try:
执行代码
except:
发生异常执行的代码
else:
没有异常执行的代码
代码示例:
python
try:
username = input("请输入账号:")
passwd = input("请输入密码:")
if username=="admin"and passwd=="123456":
print("登陆成功")
else:
print("登录失败") # 以上代码只用于模拟场景,不要也行
money = int(input("请输入取款金额"))
except:
print("出现异常了")
else:
print("请执行下一步")
场景:
1、出现异常,执行except中的代码:如输入取款金额时,输入汉字
控制台输出:
2、没有异常,执行else中的代码:如输入取款金额时,输入10
控制台输出:
2.2、语法格式2:指定异常类别,捕获异常
bash
try:
file1=open('2.txt')
s=file1.readline()
i=int(s)
except ValueError as err2:
print('ValueError:{0}'.format(err2))
except OSError as err:
print('OSError:'.format(err))
except:
print('unexcept error', sys.exc_info())
代码示例:
python
try:
uername = input("请你输入你的账号")
passwd = input("请你输入你的密码")
if uername == "admin"and passwd == "123456":
print("登录成功")
else:
print("登录失败")
money = int(input("请输入取款金额"))
except Exception as error:
print("类型。。。。", str(error))
else:
print("无异常继续执行取款的下一步操作......")
出现异常,执行except中的代码:如输入取款金额时,输入字母
2.3、语法格式3:try-finally 语句无论是否发生异常都将执行最后的代码。
bash
try:
执行代码
except:
发生异常执行的代码
else:
没有异常执行的代码
finally:
不管有没有异常都会执行的代码
代码示例:
python
try:
username = input("请输入账号:")
passwd = input("请输入密码:")
if username=="admin"and passwd=="123456":
print("登陆成功")
else:
print("登录失败")
money = int(input("请输入取款金额"))
except:
print("出现异常了")
else:
print("请执行下一步")
finally:
print("请收好您的卡片")
场景:
1、出现异常,执行except中的代码:如输入取款金额时,输入汉字
控制台输出:
2、没有异常,执行else中的代码:如输入取款金额时,输入10
控制台输出:
2.4、主动抛出异常raise
代码示例:
python
try:
username = input("请输入账号:")
passwd = input("请输入密码:")
if username=="admin"and passwd=="123456":
print("登陆成功")
else:
print("登录失败")
money = int(input("请输入取款金额"))
except:
print("出现异常了")
# 主动抛出异常,让python接收到
raise
else:
print("请执行下一步")
控制台输出: