python组织文件

1、引入shutil模块,包含复制、移动、改名和删除文件等

import shutil

2、复制文件和文件夹

shutil.copy(source,dest):从source处的文件复制到dest处的文件夹,如果source是文件名,dest是目录,则把文件拷贝到dest目录下,名称仍为source的文件名;如果source是文件名,dest是文件名,则source的文件内容拷贝到dest中,文件名是dest的文件名。

shutil.copytree(source,dest):复制整个文件夹,以及它包含的子文件夹和文件

代码如下:

import shutil,os

shutil.copy('c:\\spam.txt','c:\\delicious')

返回:c:\\delicious\\spam.txt

shutil.copy('eggs.txt','c:\\delicious\\eggs2.txt')

返回:c:\\delicious\\eggs2.txt

shutil.copytree('c:\\bacon','c:\\bacon_backup')

返回:c:\\bacon_backup

3、文件和文件夹的移动或改名

shutil.move(source,dest):将source处的文件夹移动到dest处

代码如下:

import shutil

shutil.move('c:\\bacon.txt','c:\\eggs')          #c:\\eggs目录存在

返回:c:\\egges\\bacon.txt

shutil.move('c:\\bacon.txt','c:\\eggs\\new_bacon.txt')        #c:\\eggs\\new_bacon.txt存在

返回:c:\\eggs\\new_bacon.txt

shutil.move('c:\\bacon.txt','c:\\apples')     #c:\\apples不存在,c:\\bacon.txt改名为c:\\apples(没有文件名后缀的文本文件)

返回:c:\\apples

4、删除文件

os.unlink(path):        删除path处的文件

os.rmdir(path):        删除path处的文件夹,该文件夹必须为空

shutil.rmtree(path):        删除path处的文件夹,包含所有文件和文件夹都会删除

send2trash(path):        安全删除文件和文件夹,删除的文件(夹)送到垃圾箱,可以恢复

代码如下:

import send2trash

baconFile=open('bacon.txt','a')

baconFile.write('Bacon is not vegetable.')

baconFile.close()

send2trash.send2trash('bacon.txt')        #删除文件,送到垃圾箱

5、遍历目录树os.walk()

os.walk(path):返回3个值

1)当前文件夹名称的字符串

2)当前文件夹中子文件夹的字符串的列表

3)当前文件夹中文件的字符串的列表

代码如下:

import os

for folderName,subfolders,filenames in os.walk('c:\\delicious'):

        print('The current folder is '+folderName)

for subfolder in subfolders:

        print('SUBFOLDER OF '+folderName+' : '+subfolder

for filename in filenames:

        print('FILE NAME '+folderName+' : '+filename)

print('')

6、读取压缩文件zipfile.ZipFile()

import zipfile,os

os.chdir('c:\\')

examplezip=zipfile.ZipFile('example.zip')        #创建zipFile对象

examplezip.namelist()   #压缩文件中文件名列表

spamInfo=examplezip.getInfo('spam.txt')

spamInfo.file_size         #文件大小

spamInfo.compress_size        #压缩文件大小

‘Compressed file is %sx smaller!’ %(round(spamInfo.file_size/spamInfo.compress_size,2))

examplezip.close()

7、从zip文件中解压缩extractall()

import zipfile,os

os.chdir('c:\\')

examplezip=zipfile.ZipFile('example.zip')

examplezip.extractall()

examplezip.close()

或者

examplezip.extract('spam.txt')

examplezip.extract('spam.txt','c:\\some\\new\\folders')

examplezip.close()

8、创建或追加到zip文件

import zipfile

newzip=zipfile.ZipFile('new.zip','w')        #写模式会擦除zip文件中原有内容,a是追加模式打开

newzip.write('spam.txt',compress_type=zipfile.ZIP_DEFLATED)

newzip.close()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值