以下内容仅做自己学习使用,知识点内容来自柠檬班,转载请标记来源
@Author:木又
@File:demo1_os模块.py
@Time:2020/7/24 21:56
@Name:Ta Quan Ge
os模块
路径处理:
os.path.dirname:获取文件/文件夹 所在的目录
os.path.join:路径拼接的方法
os.path.abspath:获取绝对路径
魔法变量:__file__ 在那个文件里面,打印的就是那个文件的文件名
‘’’
os.path.dirname:获取文件/文件夹 所在的目录
import os
file_path1 = r"D:\project\learn_31python\py_10day\demo1_os模块.py"
# file_path2 = r"D:\project\learn_31python\py_10day"
# res = os.path.dirname(file_path1)
# res1 = os.path.dirname(file_path2)
# print(res)
# print(res1)
os.path.join:路径拼接的方法
import os
path = r"D:\project\learn_31python\py_10day"
file_name = "demo1_os模块.py"
res = os.path.join(path, file_name)
# print(res)
# 获取绝对路径
# res = os.path.abspath(".") # 获取当前文件所在的路径
# print(res)
res = os.path.abspath("..") # 获取当前文件父级目录所在的路径
# print(res)
print("__file__:", __file__) # 获取当前文件的绝对路径
res = os.path.abspath(__file__) # 获取当前文件的绝对路径
print(res)
@Author:木又
@File:demo2_os模块扩展.py
@Time:2020/7/24 21:56
@Name:Ta Quan Ge
os模块扩展:
os.getcwd:获取当前的工作路径(相当于linux pwd命令)
os.chdir():切换工作路径(相当于linux cd命令)
os.listdir():获取当前工作路径下的文件(相当于linux中的ls)
‘’’
import os
# os.getcwd:获取当前的工作路径(相当于linux pwd命令)
res = os.getcwd()
print(res)
# os.chdir():切换工作路径(相当于linux cd命令)
os.chdir('D:\zq专用')
res2 = os.getcwd()
print(res2)
# os.listdir():获取当前工作路径下的文件(相当于linux中的ls)
res3 = os.listdir()
print(res3)
# os.mkdir():创建一个文件夹
# os.mkdir("zq1") # 此处创建的文件夹是存在方D:\zq专用路径下的,因为路径被上面切换了
print(res3)
# os.rmdir():删除一个文件
os.rmdir("zq")
print(res3)
# 判断是否是文件,是则返回True,否则返回False
res4 = os.path.isfile("D:\project\learn_31python\py_09day\work_09day.py")
print(res4)
# 判断是否是文件夹,是则返回True,否则返回False
res5 = os.path.isdir("D:\project\learn_31python\py_09day")
print(res5)
@Author:木又
@File:demo3_异常处理.py
@Time:2020/7/24 21:56
异常处理:(异常捕获,可以提高代码的容错性)
try:
有可能出现错误的代码,放在try下面
try里面的内容:
1.涉及到用户输入
2.涉及到文件操作
3.涉及到网络请求
except:
当try里面的代码出错了,就会执行except里面的代码(可在此处做异常处理)
else:
try里面的代码没有出现异常就会执行else
finally:
不管try里面的代码是否出现异常,始终都会执行
‘’’
案例一:
try:
# 有可能会出现错误的代码
num = int(input("请输入一个数值:"))
except:
# 当try里面的代码出错了,就会执行except里面的代码(可以在此处做异常处理)
print("请输入整数类型,请重新输入!")
else:
print("-----success-----")
案例二:捕获指定异常类型,不同的异常类型做不同的处理
try:
# 有可能会出现错误的代码
num = int(input("请输入一个数值:")) # ValueError
with open('demo1_os模块.py', 'r', encoding='utf8') as f: # FileNotFoundError
f.read()
except ValueError as e: # 定义变量接收错误信息
# 当try里面的代码出错了,就会执行except里面的代码(可以在此处做异常处理)
print("请输入数字类型!")
print(e) # 打印错误信息
except FileNotFoundError:
print("您打开的文件不存在!")
案例三:Exception 所有异常类型,做相同的处理(捕获所有异常信息,除语法错误以外)
try:
# 有可能会出现错误的代码
num = int(input("请输入一个数值:")) # ValueError
with open('demo1_os模块.py', 'r', encoding='utf8') as f: # FileNotFoundError
f.read()
# print(a) # 此处会抛异常
except Exception as e:
print("请输入数值类型!")
print(e)
@Author:木又
@File:demo4_异常处理补充.py
@Time:2020/7/27 21:56
@Name:Ta Quan Ge
try----except
1.一个except 捕获指定多个异常类型
# name = 'zq'
# dic ={}
# try:
# print(name)
# a=10/0
# print(dic['name'])
# except(NameError,ZeroDivisionError,KeyError) as e:
# print(e)
Exception 捕获所有的异常类型
# name = "zq"
# try:
# print(name)
# a = 10/0
# print(dic['name'])
# except Exception as e:
# print(e)
‘’’
try----except----else
‘’’
# name = "zq"
# try:
# print(name)
# except Exception as e:
# print("代码错误")
# print(e)
# else:
# print("try里面的代码没有出错")
"""
==================================================
"""
name = "zq"
try:
print(name)
f = open("demo1_os模块.py",'r')
f.write([1,2,3])
except Exception as e:
print("代码错误")
print(e)
else:
print("try里面的代码没有出错")
# 不管出不出错都会执行
finally:
print("------finally-----")
f.close()
print("测试")