Est-il possible de passer des arguments dans un script Python?

Je sais comment passer des arguments dans un script shell. Ces arguments sont déclarés dans AWS datapipeline et transmis. Voici à quoi ressemblerait un script shell:

firstarg=$1 secondarg=$2 

Comment est-ce que je fais ça en Python? Est-ce exactement le même?

Cela a fonctionné pour moi:

 import sys firstarg=sys.argv[1] secondarg=sys.argv[2] thirdarg=sys.argv[3] 

Vous pouvez utiliser l'argv de sys

 from sys import argv arg1, arg2, arg3, ... = argv 

Vous pouvez réellement mettre un nombre arbitraire d'arguments dans la command line. argv sera une list avec les arguments. Ainsi, il peut aussi être appelé comme arg1 = sys.argv [0] arg2 = sys.argv [1]. . .

Gardez également à l'esprit que sys.argv [0] est simplement le nom de votre programme python. De plus, les fonctions "eval" et "exec" sont agréables lorsque vous utilisez une input de command line. Habituellement, tout dans la command line est interprété comme une string. Donc, si vous voulez donner une formule dans la command line, vous utilisez eval ().

 >>> x = 1 >>> print eval('x+1') 2