É possível passar argumentos para um script Python?
17
Eu sei como passar argumentos para um script de shell. Esses argumentos são declarados no datapipeline da AWS e transmitidos. É assim que um script de shell se pareceria:
Você já tentou pesquisar antes de perguntar? Pesquisando no google por passar argumentos para o script python, traz todas as informações necessárias. Como o quarto link, recebi a pergunta Argumentos da linha de comando no Python do Stackoverflow.
Piotr Dobrogost
3
Pesquisando no google por passar argumentos para o script python, traz este post.
Sim, isso funciona. Por alguma razão, a indexação não inicia em 0. Portanto, sys.argv[0]é igual a nada
simplesmente codificando
14
argv[0]deve ser o nome do script
Peter Gerhat
3
Você pode usar o argv do sys
from sys import argv
arg1, arg2, arg3,...= argv
Na verdade, você pode colocar um número abitrário de argumentos na linha de comando. argv será uma lista com os argumentos. Portanto, também pode ser chamado como arg1 = sys.argv [0] arg2 = sys.argv [1]. . .
Lembre-se também de que sys.argv [0] é simplesmente o nome do seu programa python. Além disso, as funções "eval" e "exec" são boas quando você usa a entrada da linha de comando. Geralmente, tudo na linha de comando é interpretado como uma sequência. Portanto, se você quiser fornecer uma fórmula na linha de comando, use eval ().
Respostas:
Isso funcionou para mim:
fonte
sys.argv[0]
é igual a nadaargv[0]
deve ser o nome do scriptVocê pode usar o argv do sys
Na verdade, você pode colocar um número abitrário de argumentos na linha de comando. argv será uma lista com os argumentos. Portanto, também pode ser chamado como arg1 = sys.argv [0] arg2 = sys.argv [1]. . .
Lembre-se também de que sys.argv [0] é simplesmente o nome do seu programa python. Além disso, as funções "eval" e "exec" são boas quando você usa a entrada da linha de comando. Geralmente, tudo na linha de comando é interpretado como uma sequência. Portanto, se você quiser fornecer uma fórmula na linha de comando, use eval ().
fonte
fonte