python自动化笔记:os模块和异常处理

目录

一、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("请执行下一步")

控制台输出:

相关推荐
电饭叔11 小时前
DataFrame和 Series 索引
android·python
oh,huoyuyan11 小时前
火语言 RPA:批量删除多个 TXT 文件指定关键词的自动化案例
运维·自动化·rpa
tb_first11 小时前
万字超详细苍穹外卖学习笔记3
java·jvm·笔记·学习·spring·tomcat·maven
穿过锁扣的风11 小时前
决策树:从入门到实战,解锁 AI 分类预测的核心利器
数据结构·python·决策树
爱学习的阿磊11 小时前
用Python实现自动化的Web测试(Selenium)
jvm·数据库·python
啊阿狸不会拉杆11 小时前
《机器学习导论》第 1 章 - 引言
人工智能·python·算法·机器学习·ai·numpy·matplotlib
coldstarry11 小时前
sheng的学习笔记-AI-adaboost(Adaptive Boosting)
人工智能·笔记·学习
CodeCraft Studio11 小时前
【Parasoft案例分享】在 DO-178C 标准下,如何实现航空嵌入式软件测试自动化
单元测试·自动化·静态分析·代码覆盖率·parasoft·do-178c·软件自动化测试
liliangcsdn11 小时前
探索对比学习的改进-经典对比学习 vs 分组对比学习
学习
薛定谔的悦12 小时前
体验使用Cursor自动化编程
运维·自动化