Posso forçar o os.walk do python3 a visitar diretórios em ordem alfabética? como
Gostaria de saber se é possível forçar o os.walk em python3 a visitar diretórios em ordem alfabética. Por exemplo, aqui está um diretório e algum código que irá percorrer esse diretório:
ryan:~/bktest$ ls -1 sample
CD01
CD02
CD03
CD04
CD05
--------
def main_work_subdirs(gl):
for root, dirs, files in os.walk(gl['pwd']):
if root == gl['pwd']:
for d2i in dirs:
print(d2i)
Quando o código python atinge o diretório acima, eis a saída:
ryan:~/bktest$ ~/test.py sample
CD03
CD01
CD05
CD02
CD04
Gostaria de forçar o passeio a visitar esses diretórios em ordem alfabética,01, 02 ... 05
. No documento python3 paraos.walk
, diz
Quando o topdown for True, o chamador poderá modificar a lista de nomes de diretórios no local (talvez usando a atribuição del ou slice), e walk () recursará apenas nos subdiretórios cujos nomes permanecem em nomes de diretórios; isso pode ser usado para remover a pesquisa, imponha uma ordem específica de visita
Isso significa que posso impor uma ordem de visita alfabética emos.walk
? Se sim, como?