Создание анимированного GIF в Python

Я пытаюсь создать анимированный GIF, используя images2gif.py (pastebin для самого последнего verson: bit.ly/XMMn5h).

Я использую этот скрипт:

__author__ = 'Robert' from images2gif import writeGif from PIL import Image import os file_names = sorted((fn for fn in os.listdir('.') if fn.endswith('.gif'))) #['animationframa.png', 'animationframb.png', ...] " images = [Image.open(fn) for fn in file_names] size = (150,150) for im in images: im.thumbnail(size, Image.ANTIALIAS) print writeGif.__doc__ filename = "my_gif.GIF" writeGif(filename, images, duration=0.2) 

Однако я получаю следующую ошибку:

Файл «C: \ Python27 \ lib \ images2gif.py», строка 418, в файле writeGifToFile globalPalette = палитры [origin.index (max (происходит))] ValueError: max () arg – пустая последовательность

Мне кажется, что это пусто. Любая идея, как я могу это исправить?

спасибо, Гарри

2 Solutions collect form web for “Создание анимированного GIF в Python”

OK Я проверил ваш точный код на двух разных машинах, и он отлично работает на обоих. Одна машина Ubuntu 12.04, а другая – Windows XP. Они оба используют Python 2.7 и последнюю версию images2gif, которую я скачал здесь . Я рекомендую следующее:

  1. проверьте, какая версия python и библиотеки вы используете, попробуйте и получите последние.
  2. проверить его на другой машине
  3. попробуйте и удалите python и все библиотеки и попытайтесь переустановить

В конструкторе списка

  (fn for fn in os.listdir('.') if fn.endswith('.gif')) 

endswith чувствителен к регистру, поэтому, если у вас все изображения GIF, они не будут найдены, и вы получите

  ValueError: max() arg is an empty sequence 

ошибка.

Я предлагаю использовать

  (fn for fn in os.listdir('.') if fn.endswith('.gif') or fn.endswith('.GIF')) 

для успеха с этим. Кроме того, неплохо создать анимированный gif-файл в родительском (или, по крайней мере, другом) каталоге.

  • Определение прозрачности GIF в Python
  • Как создать прозрачный gif (или png) с помощью PIL (python-imaging)
  • Python - отображает HTML-контент в GIF-изображение
  • Python - лучший язык программирования в мире.