Estou tentando depurar um script que usa argumentos de linha de comando como entrada. Os argumentos são arquivos de texto no mesmo diretório. O script obtém os nomes dos arquivos da lista sys.argv. Meu problema é que não consigo iniciar o script com argumentos em pycharm.
Tentei inserir argumentos no campo "Parâmetros do script" no menu "Executar"> "Editar configuração" da seguinte forma:
-s'file1.txt', -s'file2.txt'
Mas não funcionou. Como eu inicio meu script com argumentos?
PS estou no Ubuntu
script parameters
Script parameters
opção.Para o bem de outras pessoas que estão se perguntando como chegar a esta janela. Veja como:
Você pode acessá-lo clicando em
Select Run/Debug Configurations
(à esquerda de ) e indo para oEdit Configurations
. Um gif fornecido para maior clareza.fonte
No PyCharm Community ou Professional Edition 2019.1+ :
file2.txt file3.txt
, ou--myFlag myArg --anotherFlag mySecondArg
)fonte
Além da resposta de Jim (desculpe, não há pontos de representação suficientes para fazer um comentário), só queria apontar que os argumentos especificados no PyCharm não têm caracteres especiais de escape, ao contrário do que você faria na linha de comando. Portanto, enquanto na linha de comando você faria:
o parâmetro PyCharm seria:
"/media/paul/New Volume/Users/paul/Documents/spinmaster/*.png"
fonte
Observe que por alguma razão desconhecida, não é possível adicionar argumentos de linha de comando na versão PyCharm Edu. Isso só pode ser feito nas edições Professional e Community.
fonte
O primeiro parâmetro é o nome do script que você deseja executar. Do segundo parâmetro em diante, são os parâmetros que você deseja passar da linha de comando. Abaixo está um script de teste:
from sys import argv script, first, second = argv print "Script is ",script print "first is ",first print "second is ",second
E aqui está como você passa os parâmetros de entrada: 'Caminho para seu script', 'Primeiro parâmetro', 'Segundo parâmetro'
Digamos que o caminho para o seu script seja /home/my_folder/test.py, a saída será como:
Script is /home/my_folder/test.py first is First Parameter second is Second Parameter
Espero que isso ajude, pois levei algum tempo para descobrir que os parâmetros de entrada são separados por vírgulas.
fonte
Adicione o seguinte ao topo do seu arquivo Python.
import sys sys.argv = [ __file__, 'arg1', 'arg2' ]
Agora, você pode simplesmente clicar com o botão direito no script Python.
fonte
Acredito que esteja incluso até na versão Edu. Apenas clique com o botão direito no botão de seta verde sólido (Executar) e escolha "Adicionar parâmetros".
fonte
Funciona na versão edu para mim. Não foi necessário especificar uma opção -s nas opções do interpretador.
fonte