python3檔案操作,壓縮包的處理學習案例兩則

2021-10-20 07:17:46 字數 1872 閱讀 4523

一、自動解壓壓縮包,刪除解壓後的壓縮包

二、任務:實時監測乙個資料夾,如果包含的檔案大於5個,壓縮到乙個資料夾中,並刪除這些檔案

#!/usr/bin/env python

# -*- coding:utf-8 -*-

# scan、unzip、delete zip、detect

# 在執行時新建乙個檔案還是會出錯 複製過來的是沒問題的

import os

import shutil

import time

path = "d:/***xx/" #路徑 拼接的時候注意/

def scan_file():

files = os.listdir(path)

for f in files:

if f.endswith('.zip'):

return f

def unzip_it(f):

folder_name = f.split('.')[0]

target_path = path + folder_name

os.makedirs(target_path)

shutil.unpack_archive(path+f, target_path) #檔案要加上路徑

def delete(f):

os.remove(path+f) #這裡也是,刪除檔案需要路徑

while true:

#持續觀察有沒有檔案,但是大部分時間是沒有壓縮檔案的

#可能會返回none 或者報錯什麼的,所以加乙個判斷

zip_file = scan_file()

print(zip_file)

if zip_file:

unzip_it(zip_file)

delete(zip_file)

time.sleep(3) #每3s嘗試一次

當再次檢測到檔案多於5個時,生成第二個壓縮包 命名archive+壓縮包次序

#!/usr/bin/env python

# -*- coding:utf-8 -*-

# autor:tangzicheng

# 任務:檢測乙個資料夾,如果包含的檔案大於5個,壓縮到乙個資料夾中,並刪除這些檔案

# 當再次檢測到檔案多於5個時,生成第二個壓縮包

# 命名archive+壓縮包次序

from shutil import make_archive

import os

import time

file_path = "g:/寒假資源/書/pdf"

output_path = "g:/寒假資源/書/test" #不能和檔案在乙個資料夾,否則下次壓縮會把壓縮包一起壓縮

zip_count = 0 #計算壓縮包的數目(可以用來取名

while true:

files = os.listdir(file_path)

files_count = len(files) #計算檔案數目

if files_count >= 5:

zip_count = zip_count + 1

# 指定壓縮包的名稱以及路徑

zip_name = output_path + '/' + 'archive' + str(zip_count)

# 壓縮檔案

make_archive(zip_name,'zip', file_path)

# 刪除壓縮過的檔案

for f in files:

os.remove(file_path+'/'+f)

# 休眠1s,達到每1秒檢測一次的效果

time.sleep(1)

print(1)

Python3 檔案操作

open函式的第乙個引數是要開啟的檔名 檔名區分大小寫 read函式可以一次性讀入並返回檔案的所有內容。close函式負責關閉檔案 注意 如果忘記關閉檔案,會造成系統資源消耗,而且會影響到後續對檔案的操作。方法執行後,會把檔案指標移動到檔案的末尾。示例 開啟要讀取的檔案 file open test...

python3 檔案操作

對檔案操作流程 1 開啟檔案,得到檔案控制代碼並賦值給乙個變數。2 通過控制代碼對檔案進行操作 3 關閉檔案 基本操作 f open lyrics 開啟檔案 first line f.readline print first line first line 讀第一行 print 我是分割線 cent...

Python3 檔案操作詳解

檔案操作的步驟 開啟檔案 操作檔案 關閉檔案 切記 最後要關閉檔案 否則可能會有意想不到的結果 檔案控制代碼 open 檔案路徑 模式 指定檔案編碼 檔案控制代碼 open 檔案路徑 模式 encoding utf 8 為了防止忘記關閉檔案,可以使用上下文管理器來開啟檔案 with open 檔案路...