os模块
重命名:
os.rename(原文件名, 新名字)
os.rename(直接填写当前层级下的文件名, 新名字)
重命名(如果新名字 的路径不存在,可以改掉):
os.renames(原文件名, 新名字)
os.renames('a/b/1.txt', 'a/c/11.txt')
"""
a表示当前文件夹
b文件夹存在,c文件夹不存在
此命令会将b文件夹更名为c,如果是rename命令,会报错找不到路径
"""
删除目录(只能删除空目录):
os.rmdir('f/e')
os.removedirs('f/t')
删除文件(只能删文件,不能删目录):
os.remove('a/b/22.txt')
创建目录:
os.mkdir('f/t/') #此处f目录必须存在
获取当前目录并打印(不含当前文件):
print(os.getcwd())
改变当前目录:
os.chdir('f')
查看当前目录列表(看当前目录下有什么):
print(os.listdir(os.getcwd()))
查看上级目录内容(看上级目录下有什么):
print(os.listdir('../'))
例子:
把a.txt的内容复制到b.txt:
a_file=open('a.txt','r',encoding='utf-8')
b_file=open('b.txt','w',encoding='utf-8')
f=a_file.read()
b_file.write(f)
a_file.close()
b_file.close()
当a.txt文件过大时:
a_file=open('a.txt','r',encoding='utf-8')
b_file=open('b.txt','w',encoding='utf-8')
while True:
f=a_file.read(1024)
if len(f)==0:
break
b_file.write(f)
a_file.close()
b_file.close()
os.path模块
获得当前绝对路径(不含当前文件):
os.path.abspath()
拼接两个路径为一个:
p1=r'C:\Users\administrator' # 尾部不能有/
p2=r'2.txt' # 头部不能有/
print(os.path.join(p1,p2)) # 结果:C:\Users\administrator\2.txt
p3=r'C:\Users\administrator\2.txt'
判断路径是否是一个目录:
print(os.path.isdir(p2)) # 结果:False
print(os.path.isdir(p1)) # 结果:True
判断目录是否存在:
print(os.path.exists(p1))
判断路径是否是一个文件:
print(os.path.isfile(p2)) # 结果:True
拿到文件内容大小:
print(os.path.getsize(p3)) # 2.txt 文件内容字节数
拿到路径目录名称:
print(os.path.dirname(p3)) # 结果:C:\Users\administrator
获取文件名及后缀:
print(os.path.basename(p3)) # 结果:2.txt
判断是否为绝对路径:
print(os.path.isabs(p3)) # 结果:True
获取文件操作时间:
print(os.path.getatime(p3)) # 获取最后访问时间 格式:时间戳
print(os.path.getctime(p3)) # 获取创建时间 格式:时间戳
print(os.path.getmtime(p3)) # 获取文件的修改时间
import time
# 把时间戳转换成指定日期格式
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(os.path.getatime(p3))