Modo de travessia do Python

A travessia de Python é muito importante no programa.Saiba mais sobre o modo de travessia, que pode ser aplicado à distribuição de tarefas e à leitura e gravação de dados.

Python percorre recursivamente o diretório:

import os 

def getAllDirRE (path, sp = ""): #Obter
todos os arquivos no diretório atual
filesList = os.listdir (path) #Processar
cada arquivo
sp + = ""
para fileName em filesList: #Determine
se é um caminho ( Usar caminho absoluto)
fileAbsPath = os.path.join (caminho, fileName)
se os.path.isdir (fileAbsPath):
print (sp + "directory:", fileName) #
chame
recursivamente getAllDirRE (fileAbsPath, sp)
else:
print ( sp + "Arquivo normal:", fileName)

getAllDirRE (r "C: \ Users \ xlg \ Desktop \ Python-1704 \ day09 \ temp \ dir")


Diretório transversal recursivo de simulação de pilha Python (profundidade transversal):
import os 

def getAllDirDE (caminho):
pilha = []
stack.append (caminho) #Processar a

pilha e finalizar o loop quando a pilha estiver vazia
enquanto len (pilha)! = 0: #Remover
dados da pilha
# []
dirPath = stack.pop ()
#print (dirPath) #Todos os
arquivos no diretório
filesList = os.listdir (dirPath)
#print (filesList) #Processa
cada arquivo, se for um arquivo normal, imprima-o, se for um diretório e, em seguida, o diretório Pilha push de endereço
para fileName em filesList:
fileAbsPath = os.path.join (dirPath, fileName)
se os.path.isdir (fileAbsPath): #Se o
diretório estiver na pilha,
imprima ("directory:" + fileName)
stack.append (fileAbsPath )
# ["B", "E", "F "]
else: #Imprimir
arquivo comum
print ("ordinário:" + fileName)

getAllDirDE (r "C: \ Users \ xlg \ Desktop \ Python-1704 \ day09 \ temp \ dir")


Diretório transversal da largura do Python (fila):
importar 
as coleções de importação

def getAllDirQU (caminho):
fila = coleções.deque ()
# na fila
queue.append (caminho)
enquanto len (fila)! = 0: #out
dados da fila
dirPath = fila.popleft ()
# descobrir tudo O
filesList = os.listdir (dirPath)

para fileName em filesList: #Absolute
path
fileAbsPath = os.path.join (dirPath, fileName) # Julgue
se é um diretório, se for um diretório, insira a equipe;
caso contrário, imprima se os.path. isdir (fileAbsPath):
print ("Diretório:" + fileName)
queue.append (fileAbsPath)
else:
print ("Arquivo comum:" + fileName)

getAllDirQU (r "C: \ Usuários \ xlg \ Desktop \ Python-1704 \ day09 \ temp \ dir")
 
 

Acho que você gosta

Origin www.cnblogs.com/mumu1/p/12708277.html
Recomendado
Clasificación