de-vraag
  • Вопросы
  • Метки
  • Пользователи
Оповещения
Вознаграждения
Регистрация
После регистрации, сможете получать уведомления об ответах и комментариях на Ваши вопросы.
Вход
Если у Вас уже есть аккаунт, войдите чтобы проверить новые уведомления.
Тут будут вознаграждения за добавленные вопросы, ответы и комментарий.
Дополнительно
Источник
Редактировать
Scott Hunter
Scott Hunter
Вопрос

Как узнать, не вызвана ли ошибка Python ZipFile.writestr (), потому что файл заполнен?

Без использования расширений zip64 размер Zip не может превышать 2 ГБ, поэтому попытка записи в файл, который поместил бы его поверх этого предела, не будет работать. Я ожидал, что когда такое письмо будет предпринято, это вызовет исключение, но я не смог заставить его подняться. (В документации не говорится об этом.) Если какое-либо исключение не возникает в таких обстоятельствах, как бы я (эффективно) поймал определение того, была ли запись успешной или нет?

3 2011-10-27T19:23:40+00:00 2
Peter O.
Peter O.
Редактировал вопрос 27-го октября 2011 в 8:57
Программирование
exception
python
zip
Griffin
27-го октября 2011 в 9:11
2011-10-27T21:11:42+00:00
Дополнительно
Источник
Редактировать
#56791930
import os

size = os.path.getsize("file") #Get the size of the file.
size = size/1073741824 #Converting bytes to GB.

if size < 2: # < is probably safer than <=
        #do the zipping
else:
        print "The file is too large!"

Разумеется, это не идеально, но это может быть временным решением, пока не будет найден лучший. Опять же, я не думаю, что это очень хороший способ использования zip. Но если нет соответствующего исключения (которое должно быть), оно может служить временным решением.

0
0
jfs
28-го октября 2011 в 8:55
2011-10-28T08:55:57+00:00
Дополнительно
Источник
Редактировать
#56791931

У меня есть исключение, пытающееся написать большие строки в zip-архив:

$ python write-big-zip.py
Traceback (most recent call last):
  File "write-big-zip.py", line 7, in 
    myzip.writestr('arcname%d'% i, b'a'*2**30)
  File "/usr/lib/python2.7/zipfile.py", line 1125, in writestr
    self._writecheck(zinfo)
  File "/usr/lib/python2.7/zipfile.py", line 1020, in _writecheck
    raise LargeZipFile("Zipfile size would require ZIP64 extensions")
zipfile.LargeZipFile: Zipfile size would require ZIP64 extensions

Использование скрипта:

#!/usr/bin/env python
"""Write big strings to zip file until error."""
from zipfile import ZipFile

with ZipFile('big.zip', 'w') as myzip:
    for i in range(4):
        myzip.writestr('arcname%d'% i, b'a'*2**30)
0
0
Похожие сообщества 30
Python
Python
15 512 пользователей
Уютный чат для профессионалов, занимающихся поиском питоньих мудростей. Как не получить бан: https://t.me/ru_python/802295
Открыть telegram
Python beginners
Python beginners
14 284 пользователей
Вопросы про Python для чайников. Cпам и троллинг неприемлем. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Правила группы: https://t.me/ru_python_beginners/1649981
Открыть telegram
🐍 Python Stepik Chat
🐍 Python Stepik Chat
7 772 пользователей
Этот уютный чат создан для помощи в решение задач на прекрасном курсе "Поколение Python: курс для начинающих" и не только. Правила: t.me/pythonstepikchat/316777 Чат для оффтопа - t.me/+fqNb78zlQY81NGUy Наш канал - @kimport_this
Открыть telegram
aiogram
aiogram
6 303 пользователей
Repo: https://github.com/aiogram/aiogram Site: https://aiogram.dev Полезная информация: https://t.me/aiogram_ru/168411
Открыть telegram
Python — вакансии и аналитика
Python — вакансии и аналитика
6 048 пользователей
Публикуем вакансии и запросы на поиск работы по направлению Python, Flask и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @golang_jobs, @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs
Открыть telegram
Сообщество Python Программистов
Сообщество Python Программистов
5 858 пользователей
Канал: @pip_install Наши сайты: https://python-scripts.com https://selenium-python.com https://itfy.org Мы в ВК: https://vk.com/open_sourcecode Вакансии: https://t.me/python_scripts_hr
Открыть telegram
Добавить вопрос
Категории
Все
Технологий
Культура / Отдых
Жизнь / Искусство
Наука
Профессии
Бизнес
Пользователи
Все
Новые
Популярные
1
Roxana Elizabeth CASTILLO Avalos
Зарегистрирован 1 день назад
2
Hideo Nakagawa
Зарегистрирован 2 дня назад
3
Sergiy Tytarenko
Зарегистрирован 3 дня назад
4
shoxrux azadov
Зарегистрирован 6 дней назад
5
Koreets Koreytsev
Зарегистрирован 1 неделю назад
© de-vraag 2022
Источник
stackoverflow.com
под лицензией cc by-sa 3.0 с атрибуцией