Сортировка буквенно-цифровых списков по обнаружению символов (python) - PullRequest
0 голосов
/ 08 марта 2019

Я делаю программу, которая может открыть zip-файл и перечислить имена файлов в алфавитно-цифровом порядке.Вот мой код:

import zipfile
import re

zip_file = zipfile.ZipFile('/home/aaaa/exploit/example.zip','r')
  for name in zip_file.namelist():
  sorted(str(name in zip_file.namelist()))
    print(name)

zip_file.close()

А вот вывод:

example/
example/txt2.txt
example/txt3.txt
example/txt1.txt

Я бы хотел, чтобы имя в zip_file.namelist() было организовано так:

example/
example/txt1.txt
example/txt2.txt
example/txt3.txt

но я не очень уверен, как сортировать буквенно-цифровые строки, как это только по номеру.

Ответы [ 2 ]

0 голосов
/ 08 марта 2019

namelist указывает на внутренний список файлов объектов. Вы можете попытаться отсортировать выходные данные: sorted(zip_file.namelist()), или вы можете вместо этого коснуться внутреннего объекта zip_file.filelist.sort().

0 голосов
/ 08 марта 2019

Вы не сортируете список, пока не просматриваете их.Попробуйте это:

for name in sorted(zip_file.namelist()):
    print(name)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...