活动地址:CSDN21天学习挑战赛
学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:
想系统/深入学习某技术知识点…
一个人摸索学习很难坚持,想组团高效学习…
想写博客但无从下手,急需写作干货注入能量…
热爱写作,愿意让自己成为更好的人…
…
欢迎参与CSDN学习挑战赛,成为更好的自己,请参考活动中各位优质专栏博主的免费高质量专栏资源(这部分优质资源是活动限时免费开放喔~),按照自身的学习领域和学习进度学习并记录自己的学习过程。您可以从以下3个方面任选其一着手(不强制),或者按照自己的理解发布专栏学习作品,参考如下:
学习日记
文件模块:
绝对路径:从根目录开始的路径
相对路径:
. 没错,就是一个点,表示的是当前文件夹;.. 两个点表示的是上一层文件夹。
怎么用:
os 模块与 os.path 模块
在 Python 中操作文件路径,使用 os 模块,os.path 模块是 os 模块内部的一个子模块,首先导入该模块。
import os
print(os.getcwd())#获取档期Python所在的工作目录
**获取绝对路径 os.path.abspath **
abspath 方法需要一个参数 path,即一个路径,基于该路径在返回绝对路径。
import os
ret = os.path.abspath("demo4.py")
print(ret)
**获取相对路径 os.path.relpath **
语法格式:os.path.relpath(path,start)
import os
ret = os.path.relpath("D:\")
print(ret)
路径检查主要是为了检查文件或者文件夹是否存在,或者判断是文件夹还是文件
exists(path) 如果 path 文件或文件夹存在返回 True,否则返回 False;
isabs(path) path 是绝对路径返回 True,否则返回 False;
isdir(path) path 是文件夹返回 True,否则你懂;
isfile(path) path 是文件返回 True。
目录操作:
以下几个方法在 os 模块中,执行如下操作建议先通过 os.path.exists 判断目录是否存在。
mkdir(path) 创建目录;
rmdir(path) 删除目录;
chdir(path) 切换当前工作目录到 path;
remove(path) 删除文件,注意如果 path 是一个目录,删除会报错,权限不足,删除目录请使用 rmdir。
文件大小:getsize 方法
import os
print(os.path.getsize("demo4.py"))
获取下的所有内容:os.listdir 方法
import os
print(os.listdir("."))
os.walk 方法:遍历目录树,通过循环就可以获取到指定目录下面所有的文件与文件夹
Python 读取文件:
读取问价你的所有内容:open 函数打开文件之后,可以通过 read 读取文件内容
代码如下:
file = "test.txt"
打开文件
f = open(file, encoding="utf-8")
读取文件全部内容
read_str = f.read()
关闭文件
f.close()
print(read_str)
逐行读取文件内容:
for line in f:
print(line,end="")
或者:data = f.readlines()
为了防止打开文件后忘记关闭可以使用with as
写入文件:
文件对象.write(待写入内容)
with open(file, mode="w", encoding="utf-8") as f:
# 写入文件内容
f.write("我是即将被写入的内容")
写入的内容需要时字符串类型且会覆盖原内容
写入多行数据:可以通过write方法,在with的代码块中使用,注意write方法不会再行位换行,
with open(file, mode="w", encoding="utf-8") as f:
# 写入文件内容
f.write("我是即将被写入的内容\n")
f.write("我是即将被写入的内容")
文件复制:shutil方法
格式:shutil.copy(旧文件,新文件)
目录复制:copytree 方法 语法格式:shutil.copytree("../1","a4")
要确认新目录存不在存在 存在的话就会报错
move方法:
移动文件:shutil.move(旧文件,新文件)
删除有数据的目录
zipFile 模块:通过该模块可以直接对文件进行压缩与解压操作