python 檔案目錄遍歷

2021-09-07 18:12:44 字數 2627 閱讀 7875

import os

path = r'f:\pycharmprojects\basic gram\作業和習題\test'

def getallfileanddir(path): # 獲取當前目錄下所有檔案及檔案目錄 filelist = os.listdir(path) # print(filelist) # 遍歷filelist列表 for filename in filelist: # isdir isfile # print(filename) # 拼接絕對路徑 absfile = os.path.join(path,filename) if os.path.isdir(absfile): print(absfile+'---目錄') getallfileanddir(absfile) else: print(absfile+'---檔案') getallfileanddir(path)

import collections

def getallfileanddir(sourcepath):

stack = collections.deque()

while len(stack) != 0:

path = stack.pop()

filelist = os.listdir(path)

for filename in filelist:

absfile = os.path.join(path, filename)

if os.path.isdir(absfile):

print(absfile+'---目錄')

else: print(absfile+'---檔案') getallfileanddir(path)

def getallfileanddir(sourcepath):

queue = collections.deque()

while len(queue) !=0:

path = queue.popleft()

filelist = os.listdir(path)

for filename in filelist:

absfile = os.path.join(path, filename)

if os.path.isdir(absfile):

print(absfile+'---目錄')

else:

print(absfile+'---檔案')

getallfileanddir(path)

import os

# 複製目錄

def copydir(sourdir,targetdir): if not os.path.exists(sourdir): print("如果源目錄不存在,直接停止") return if not os.path.exists(targetdir): os.makedirs(targetdir) listname = os.listdir(sourdir) for dirnameandfilename in listname: sourabspath = os.path.join(sourdir,dirnameandfilename) targetabspath = os.path.join(targetdir,dirnameandfilename) if os.path.isdir(sourabspath): copydir(sourabspath,targetabspath) if os.path.isfile(sourabspath): # 如果目標檔案不存在, 或者 如果該檔案已經存在但是檔案大小不一樣 if (not os.path.exists(targetabspath)) or (os.path.exists(targetabspath) and (os.path.getsize(sourabspath) != os.path.getsize(targetabspath))): rf = open(sourabspath,"rb") wf = open(targetabspath,"wb") while true: content = rf.read(1024*1024) if len(content) == 0: break wf.write(content) wf.flush() wf.close() rf.close() spath = r'f:\pycharmprojects\basic gram\作業和習題\test' tpath = r'f:\pycharmprojects\basic gram\作業和習題\testnew' copydir(spath, tpath)

1.乙個函式接受資料夾的名稱作為輸入引數,請將該資料夾中的所有檔案複製到 資料夾名-副本 中去,請補充缺失的**. (20分)

def copyfile(spath)

2.題1複製過程中,每隔一秒列印一次複製進度(即當前已複製個數/總檔案個數)(15分)

import os

import collections

import time

import sys

def getfilenum(spath):

num = 0

stack = collections.deque()

閱讀原文

python遍歷目錄檔案

直接上 os.walk import os from os.path import join,getsize for root,dirs,files in os.walk python lib email print root,consumes print sum getsize join root...

python 目錄遍歷 目錄檔案列表 介紹

目錄 一 使用os.walk遍歷所有的目錄和檔案 二 利用os.listdir遞迴獲取所有的目錄路徑和檔案路徑 目錄結構如下圖 test a d g g.txt test a d a.txt test a e b c 1.txt 2.txt 1 獲取test目錄下的所有檔案 for root,dir...

cmd for 遍歷目錄 python 遍歷目錄樹

假定你希望對某個資料夾中的所有檔案改名,包括該資料夾中所有子資料夾中 的所有檔案。也就是說,你希望遍歷目錄樹,處理遇到的每個檔案。寫程式完成這 件事,可能需要一些技巧。好在,python 提供了乙個函式,替你處理這個過程。請看 c delicious 資料夾及其內容,如圖所示。這裡有乙個例子程式,針...