按字符检测对字母数字列表进行排序(python)

2024-10-02 20:42:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在制作一个程序,能够打开一个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

但我不太确定如何仅按数字对这样的字母数字字符串进行排序


Tags: nameinimport程序txtexample字母数字
2条回答

在循环浏览列表之前,不会对列表进行排序。试试这个:

for name in sorted(zip_file.namelist()):
    print(name)

namelist指向内部对象文件列表。您可以尝试对输出数据进行排序:sorted(zip_file.namelist()),或者您可以触摸内部对象zip_file.filelist.sort()

相关问题 更多 >