1 Изучение содержимого Zipfile

Есть несколько способов проверить содержимое zip-файла. Вы можете использовать printdir , чтобы просто получить различную информацию , отправляемые на stdout

 with zipfile.ZipFile(filename) as zip:
    zip.printdir()

    # Out:
    # File Name                                             Modified             Size
    # pyexpat.pyd                                    2016-06-25 22:13:34       157336
    # python.exe                                     2016-06-25 22:13:34        39576
    # python3.dll                                    2016-06-25 22:13:34        51864
    # python35.dll                                   2016-06-25 22:13:34      3127960
    # etc.

 

Мы можем также получить список имен файлов с namelist метода. Здесь мы просто печатаем список:

 with zipfile.ZipFile(filename) as zip:
    print(zip.namelist())

# Out: ['pyexpat.pyd', 'python.exe', 'python3.dll', 'python35.dll', ... etc. ...]

 

Вместо того , чтобы namelist , мы можем назвать infolist метода, который возвращает список ZipInfo объектов, которые содержат дополнительную информацию о каждом файле, например , метка времени и размере файла:

 with zipfile.ZipFile(filename) as zip:
    info = zip.infolist()
    print(zip[0].filename)
    print(zip[0].date_time)
    print(info[0].file_size)

# Out: pyexpat.pyd
# Out: (2016, 6, 25, 22, 13, 34)
# Out: 157336