Python 学习(九):组织文件

# python 09.组织文件

# shutil模块(shell工具)  复制、移动、改名、删除文件

# 1 复制文件和文件夹  shutil.copy(source, destination)返回复制文件的路径
import shutil, os
# 设置当前路径
os.chdir('./python')
# 复制文件
shutil.copy('test_1.py', 'test_2.py')
# 复制到指定文件夹
shutil.copy('../mycats.py', '.')

# copytree(source,destintion)函数 将复制整个文件夹及其它包含的文件夹和文件。
# 当前目录下创建python 将上一级中python中的内容全部拷贝到当前新建的文件夹中
shutil.copytree('../python', './python')

# 文件和文件夹的移动与改名 shutil.move(source, destination) 返回新位置的绝对路径
#如果原来文件中已经存在这个文件名的文件,则会覆盖。
shutil.move('../myCats.py', './python')
# 移动并改名
shutil.move('../myCats.py', './MyCats.py')

# 永久删除文件和文件夹
# os.unlink(path) 将删除path处的文件。
# os.rmdir(path)将删除path处的文件夹,他包含的所以文件和文件夹都会被删除。
for path in os.listdir():
    if path.endswith('.txt'):
        #os.unlink(path)
        print(path)

# 用send2trash 模块安全地删除
# 注册模块 pip install send2trash
import send2trash
File = open('name.txt', 'a');
File.write('my name is kyle')
File.close()
send2trash.send2trash('name.txt')

# 遍历目录树 os.walk
# os.walk() 返回三个值
# 1.当前文件夹名称的字符串
# 2.当前文件夹中子文件夹的字符串的列表
# 3.当前文件夹中文件的字符串列表
import os
for folderName, subfolders,fileNames in os.walk('.'):
    print('the current folder is ' + folderName)
    for subfolder in subfolders:
        print('SUBFOLDER of ' + folderName + ': ' + subfolder)
    for fileName in fileNames:
        print('FILE INSIDE ' + folderName + ': ' + fileName)
    print(' ')

# zipfile模块压缩文件
# 读取zip文件
import zipfile, os
# 创建一个ZipFile对象。调用ZipFil()函数
exampleZip = zipfile.ZipFile('111.zip')
list_1 = exampleZip.namelist()
print(list_1)
Info = exampleZip.getinfo('111/h.txt')
# file_size -- 原来文件大小
# compress_size  -- 压缩后文件大小
print(Info.file_size)
print(Info.compress_size)
exampleZip.close()

# 从zip文件中解压缩  extractall()方法从zip文件中解压缩所有文件和文件夹。
exampleZip = zipfile.ZipFile('111.zip')
exampleZip.extractall()
exampleZip.close()

# extract()方法从zip文件中解压缩单个文件。
exampleZip = zipfile.ZipFile('111.zip')
path = exampleZip.extract('111/h.txt')
print(path)
# 解压到指定目录下
path = exampleZip.extract('111/h.txt','../')
print(path)
exampleZip.close()

# 创建和添加到ZIP文件
newzip = zipfile.ZipFile('new.zip','w')
newzip.write('./111/h.txt',compress_type=zipfile.ZIP_DEFLATED)
newzip.close()

 

你可能感兴趣的:(Python,Python,组织文件)