Como executo um script Python de dentro do shell interativo IDLE?
O seguinte gera um erro:
>>> python helloworld.py
SyntaxError: invalid syntax
python
shell
command-line
python-idle
tshepang
fonte
fonte
helloworld.py
parece?python helloworld.py
em uma janela de shell IDLE e isso não funciona.Respostas:
Python3 :
Se o seu arquivo não estiver no mesmo diretório:
Consulte https://stackoverflow.com/a/437857/739577 para passar variáveis globais / locais.
Em versões obsoletas do Python
Função integrada do Python2 : execfile
Normalmente não pode ser chamado com argumentos. Mas aqui está uma solução alternativa:
Obsoleto desde 2.6: popen
Com argumentos:
Uso avançado: subprocesso
Com argumentos:
Leia os documentos para obter detalhes :-)
Testado com este básico
helloworld.py
:fonte
exec
para Python3Você pode usar isso em python3:
fonte
A janela do shell IDLE não é o mesmo que um shell de terminal (por exemplo, executando
sh
oubash
). Em vez disso, é como estar no interpretador interativo Python (python -i
). A maneira mais fácil de executar um script no IDLE é usar oOpen
comando doFile
menu (pode variar um pouco dependendo da plataforma que você está executando) para carregar seu arquivo de script em uma janela do editor IDLE e então usar o comandoRun
->Run Module
(atalho F5).fonte
sys.argv
no início do programa, por exemplo, sob oif __name__ == "__main__"
boilerplate usual .Run
->Run with Customized...
(atalho Shift + F5) e um pop-up será aberto onde você pode fornecer seus argumentos. Infelizmente, ele não se lembra deles atualmente, então você os colará a cada execução.Tente isto
fonte
execFile('helloworld.py')
faz o trabalho para mim. Uma coisa a ser observada é inserir o nome completo do diretório do arquivo .py se ele não estiver na própria pasta Python (pelo menos é o caso do Windows)Por exemplo,
execFile('C:/helloworld.py')
fonte
CAMINHO MAIS FÁCIL
fonte
Por exemplo:
fonte
subprocess.call(r'c:\path\to\something.py')
Nao funciona para mim. OSError: [WinError 193]% 1 não é um aplicativo Win32 válidoNo Python 3, não existe
execFile
. Pode-se usarexec
a função integrada, por exemplo:fonte
No IDLE, funciona o seguinte: -
Não sei muito sobre por que funciona, mas funciona ..
fonte
Para executar um script python em um shell python como Idle ou em um shell Django, você pode fazer o seguinte usando a função exec (). Exec () executa um argumento de objeto de código. Um objeto de código em Python é simplesmente código Python compilado. Portanto, você deve primeiro compilar seu arquivo de script e, em seguida, executá-lo usando exec (). Da sua concha:
Estou usando o Python 3.4. Veja os documentos de compilação e exec para informações detalhadas.
fonte
Eu testei isso e meio que funcionou:
fonte
você pode fazer isso de duas maneiras
import file_name
exec(open('file_name').read())
mas certifique-se de que o arquivo deve ser armazenado onde seu programa está sendo executado
fonte
No ambiente Windows, você pode executar o arquivo py na linha de comando do shell Python3 com a seguinte sintaxe:
Abaixo, explica como executar um arquivo helloworld.py simples a partir da linha de comando do shell do python
Podemos executar este arquivo no Shell Python3.7 conforme abaixo:
fonte
Existe mais uma alternativa (para windows) -
fonte
Em um console Python, pode-se tentar as 2 maneiras a seguir.
sob o mesmo diretório de trabalho,
1 >> import helloworld
# se você tiver uma variável x , você pode imprimi-la no IDLE.
>> helloworld.x
# se você tiver uma função func , você também pode chamá-la assim.
>> helloworld.func ()
2. >> runfile ("./ helloworld.py")
fonte