目录
1.文件的操作
mode = 'a' #追加模式
mode = 'x' #原创模式,独创模式
mode = 'b' #二进制模式
mode = 't' #文本
注:如果之前已经存在同名文件,使用 mode='w' 模式,会覆盖之前的文件内容
方法一:
file = open('first_file.txt', mode='a', encoding='utf-8')
# 读取数据
data = file.read()
#print(data)
# 写入数据
file.write("写入的内容")
# 关闭文件
file.close()
方法二:
# 打开文件,用 f 来接收(不用关闭文件)
with open("first_file.txt") as f:
f.read()
f.write('xxx')
更多操作模式参考:Python File(文件) 方法 | 菜鸟教程
2.异常处理
格式:
try 要运行的有可能发生异常的代码 : 代码 except 异常: 出现异常的时要运行的代码(执行的操作),记录日志
异常的基本操作:
try:
代码
except Exception as err:
print("程序报错 {}".format(err))
针对不同类型的异常分开处理(raise 手动抛出异常)
try:
代码
except SyntaxError as e:
log.info("报错:{}".format(e))
except NameError as e:
log.info("报错:{}".format(e))
finally:
# 不论有没有报错,fianally 最终都会执行
log.info('xx')
# raise
3.模块的导入
3.1 模块的分类
模块分类: 内置模块: python 自带的,如: import os
第三库模块: 通过pip安装的 pip install requests,import... , from ..import.
自定义模块: 自己写的模块: from 包 import 模块
注:from xxx import sth as other as 重命名: 取别名, 避免重复。
import 路径.路径.模块名 路径从你的项目根目录开始
3.2 __name__
__name__ 是表示当前文件的模块名。
通过模块导入形式运行的, __name__ 就是文件名、模块名称
直接运行的文件,脚本, __name__ 就不是文件名,模块名称,是固定的:__main__
4.文件的路径
# 获取现在的文件绝对路径
file_path = os.path.abspath(__file__)
print("filepath", file_path)
# 获取上一级路径
dir_name = os.path.dirname(file_path)
# 路径拼接,得到的是一个字符串。这个字符串是一个路径格式 `\`
# 所有获取到的路径,只是一个路径的表示,并不代表这个文件或者路径真的存在。
txt_path = os.path.join(dir_name, 'demo.txt' )
with open(txt_path, 'w') as f:
f.write("new txt file")
# 获取当前工作目录
print(os.getcwd())
# 创建一个新的目录(文件夹)
if not os.path.exists("xxx"):
print(os.mkdir('xxx'))
# 判断一个路径存不存在
# print(os.path.exists("d:\olg"))
# 判断路径是否是一个文件
# 获取到的路径得到是一个字符串。
print(os.path.isfile(os.getcwd()))
print(os.path.isdir(os.getcwd()))