J'ai un fichier python nommé solution.py
et je peux l'exécuter avec succès via le terminal à l'aide des commandes suivantes:
chmod +x solution.py
python3 solution.py
Cela fonctionne très bien si j'ai des phrases simples à imprimer, etc.
Que dois-je faire si j'ai défini une fonction dans solution.py
et que je veux l'appeler avec les paramètres que je veux directement depuis le terminal? Comment passer les arguments à l'appel de fonction?
Vous pouvez également utiliser le module sys
. Voici un exemple :
import sys
first_arg = sys.argv[1]
second_arg = sys.argv[2]
def greetings(Word1=first_arg, Word2=second_arg):
print("{} {}".format(Word1, Word2))
if __== "__main__":
greetings()
greetings("Bonjour", "monde")
Il a le comportement que vous recherchez:
$ python parse_args.py Hello world
Hello world
Bonjour monde
Python fournit plus d’un moyen d’analyser les arguments. Le meilleur choix consiste à utiliser le module argparse
, qui comporte de nombreuses fonctionnalités que vous pouvez utiliser.
Vous devez donc analyser les arguments dans votre code et essayer d'attraper et de récupérer les arguments dans votre code.
Vous ne pouvez pas simplement passer des arguments par le terminal sans les analyser à partir de votre code.