Всегда второй путь - вы никогда не знаете, какие будут установлены различные установки Python. Template
- это особый случай, когда это имеет меньшее значение, но когда вы проверяете возможность вместо возможности управления версиями, вы всегда более устойчивы.
Вот как я делаю Testoob поддерживает Python 2.2 - 2.6: я пытаюсь импортировать модуль различными способами, пока он не заработает. Это также относится к сторонним библиотекам.
Вот крайний случай - поддержка различных вариантов появления ElementTree:
try: import elementtree.ElementTree as ET
except ImportError:
try: import cElementTree as ET
except ImportError:
try: import lxml.etree as ET
except ImportError:
import xml.etree.ElementTree as ET # Python 2.5 and up