Finde den Fehler:
#!/usr/bin/env python import sys if sys.version_info.major < 2 or (sys.version_info.major == 2 and sys.version_info.minor < 7): print "python <2.7" else: print "python >=2.7"
Auflösung:
Der Ansatz ist eine nette Idee, funktioniert allerdings erst ab Python 2.7, da Python erst seit dem die benannten Parameter .major und .minor kennt. Damit der Code auch mit Python-Versionen kleiner als 2.7 funktioniert, müsste er wie folgt aussehen:
#!/usr/bin/env python import sys if sys.version_info[0] < 2 or (sys.version_info[0] == 2 and sys.version_info[1] < 7): print "python <2.7" else: print "python >=2.7"
Siehe auch: http://docs.python.org/library/sys.html#sys.version_info
Das sind Kleinigkeiten, auf die man stößt, wenn man versucht ein auf einem System mit Python 2.7 geschriebenes Skript mit Python 2.6 auszuführen. Wäre ja aber langweilig, wenn alles auf Anhieb glatt laufen würde.