arguments.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import sys
  4. def obtenir ( option, fallback=False ) :
  5. '''String -> String/Boolean
  6. Si l'option demandée n'existe pas, renvoie False.
  7. Si l'option demandée existe'''
  8. # si on a l'option
  9. if option in sys.argv:
  10. index = sys.argv.index( option ) + 1
  11. # si on a quelque chose après notre option
  12. if len( sys.argv ) > index :
  13. # si ce quelque chose ne commence pas par -
  14. if sys.argv[ index ][0] != '-':
  15. return sys.argv[ index ]
  16. # si c'est le cas on a à priori une option booléenne
  17. else:
  18. # si pas de fallback
  19. if not fallback:
  20. return True
  21. # sinon on retourne le fallback
  22. else:
  23. return fallback
  24. # si on a l'option mais rien derrière
  25. else:
  26. # si pas de fallback
  27. if not fallback:
  28. return True
  29. # si fallback
  30. else:
  31. # on renvoie le fallback
  32. return fallback
  33. # dans les autres cas on renvoie False ou le fallback si défini
  34. return fallback