j'ai écrit un script que je voulais permettre à la fois Python 2 et Python 3.Activation `xrange` dans python3 pour la portabilité
Après l'importation division
et print_function
de __future__
, ma seule préoccupation était que mon range
retourne dans son ensemble array en Python 2, gaspillant du temps et de la mémoire.
J'ai ajouté les 3 lignes suivantes au début du script, comme solution de contournement:
if sys.version_info[0] == 3:
def xrange(i):
return range(i)
Alors, je ne ai utilisé xrange
dans mon code.
Y at-il une façon plus élégante de le faire plutôt que ma solution de contournement?
Il existe des bibliothèques dédiées pour vous, par ex. ['six'] (https://pypi.python.org/pypi/six). –
Je ne veux pas télécharger de bibliothèques tierces – SomethingSomething
Est-ce que votre script demande vraiment beaucoup de temps et de mémoire? –