python的文件和目录操作操作

1.创建目录

*os.makedirs()*可以递归的方式创建目录

import os

os.makedirs('text/python',exist_ok=True)

这个代码是在当前工作目录下创建一个text目录,在text目录下再创建一个python目录
后面一个参数exist_ok=True是当目录存在时也不报错

2.删除文件

*os.remove()*可以删除一个文件

import os

os.remove('text/python/text.py')

3.删除目录

*os.rmdir()*可以删除一个空目录
shutil.rmtree() 可以递归删除一个目录,可以不为空

import shutil
import os

os.rmdir('tmp/python')
shutil.rmtree('tmp')

4.拷贝文件和目录
shutil库中包含拷贝函数
*shutil.copyfile()*用于拷贝文件
*shutil.copytree()*用于拷贝目录

from shutil import copyfile

copyfile('d:/text/first.py', 'e:/second.py')

拷贝 :d:/text/first.py 到e:/second.py

from shutil import copytree

copytree('d:/tools/aaa', 'e:/new/bbb')

拷贝 d:/tools/aaa 目录中所有的内容 到 e:/new/bbb 中

如果bbb文件夹存在则会报错
如果new文件夹不存在,则会创建一个new文件夹后在new文件夹中拷贝bbb目录

5.重命名
*os.rename()*可以对文件和文件夹进行重命名

import os

os.rename('321','3211')
os.rename('text1.txt','text2.txt')

将该工作目录下的321文件夹的名称命名为3211
将该工作目录下的text1.txt命名为text2.text

6.对文件路径的操作
*os.path.basename()*可以获取文件名称
*os.path.dirname()*可以获取从根目录到子目录的路径
*os.path.join()*可以讲传递的参数连接成一个新的路径

import os

path = r'F:\text\date.text'
filename = os.path.basename(path)
dirname = os.path.dirname(path)
print(filename)
print(dirname)

holename = os.path.join(dirname,filename)
print(holename)

输出结果如下:

date.text
F:\text
F:\text\date.text

7.判断文件和目录是否存在
os.path.exists()可以判断文件和目录是否存在

import os

path = r'F:\text\date.txt'
print(os.path.exists(path))  #  -->True
print(os.path.exists("F:/text1"))# -->False

8.文件大小和修改时间
*os.path.getsize()*获取文件大小
*os.path.getmtime()*获取文件最后修改时间

import os
import time

path = r'F:\text\date.txt'
print(os.path.getsize(path))              #  -->16
print(time.ctime(os.path.getmtime(path))) #  -->Sat May 29 10:39:22 2021

这里引用time库将按秒计算的时间转换成asctime可读时间
文件大小是字节数
9.当前工作目录
*os.listdir()*获取目录列表
*os.getcwd()*获取当前工作目录
*os.chdir()*更改当前工作目录

import os

os.makedirs('F:/text/python')
print(os.listdir('F:/text')# -->python
print(os.getcwd())# -->C:\Users\Desktop
os.chdir('F:/text')
print(os.getcwd())# -->F:\text

10.访问文件夹中的所有元素
os.walk()递归访问路径上的所有元素

import os

files=[]
dirs=[]
path = 'F:/'
for (dirpath,dirnames,filenames) in os.walk(path):
    files +=filenames
    dirs +=dirnames
print(files)
print(dirs)

访问方式是文件 路径->文件夹->文件
输出所有文件的路径

import os

path = 'F:/'
for (dirpath,dirnames,filenames) in os.walk(path):
    for fn in filenames:
        zipath = os.path.join(dirpath,fn)
        print(zipath)

11.对文件进行操作
1.载入文件(包括读、写)
来自菜鸟教程

fil = open("text.txt","w)	#以写的方式载入文件 
print(fil.name)  #文件的名称
print(fil.mode)	 #文件的打开方式

fil.write("hello python!")     #以写的方式打开,就可以对文件进行写入的操作
fil.close()		#将文件关闭的操作

*open(filename,mode,encodeing)*可以传入3个参数,分别是文件名,打开方式,编码格式,最后一个在py3中默认是utf-8
*.write()*想文件中写入
*.close()*将文件关闭

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值