Como executo o código Python como um script? [duplicado]

3

Preciso de ajuda para executar o python no ubuntu

Eu posso rodar python sem problemas no meu terminal mas quando eu crio um arquivo .py eu não consigo executá-lo.

    
por Bitcoin Austria 26.02.2015 / 23:34

4 respostas

9

Como funciona (exemplos para python2 , para python3 , substituem todas as ocorrências de python por python3 ):

  1. %código%
    • funciona se o arquivo for executável ou não
    • shebang ( python /path/to/script.py ) na cabeça do script é uma boa prática, mas não é necessário
  2. %código%
    • funciona se o script for executável
    • shebang é necessário ( #!/usr/bin/env python )
  3. %código%
    • funciona se o script estiver em $ PATH
    • O script
    • precisa ser executável
    • nome do arquivo precisa ter extensão
    • shebang é necessário ( /path/to/script.py )
  4. %código%
    • funciona se o script estiver em $ PATH
    • O script
    • precisa ser executável
    • nome do arquivo não deve ter extensão
    • shebang é necessário ( #!/usr/bin/env python )

Um pouco mais de informação: precedência de comando, shebang ou extensão?

O shell pode obter suas informações sobre como executar um script de duas origens (em ordem de precedência):

  • As informações de idioma no comando: script.py
  • O shebang, na primeira linha do script: #!/usr/bin/env python

A extensão de idioma, no entanto, não desempenha nenhum papel (!).

Alguns exemplos:

  1. Um script script , informações corretas (idioma) no comando, incorreto shebang, extensão incorreta :

    #!/usr/bin/env python
    echo 'Monkey eats banana'
    

    correu com:

    $ sh /path/to/script.py
    > Monkey eats banana
    

    é executado corretamente, as informações no comando têm precedência sobre o shebang e a extensão.

  2. Um script (executável) #!/usr/bin/env python , executado com extensão incorreta , mas com uma explicação correta:

    #!/usr/bin/env/python
    print "Monkey eats banana"
    

    correu com:

    $ /path/to/script.sh
    > Monkey eats banana
    

    é executado corretamente, as informações no shebang têm precedência sobre a extensão.

  3. Um script (executável) python <script> , com uma extensão correta, mas sem shebang (e sem informações de idioma no comando):

    print "Monkey"
    

    Ran com o comando:

    $ /path/to/script.py
    > Error: no such file "Monkey"
    

    não funciona corretamente, apesar da extensão de idioma!

por Jacob Vlijm 26.02.2015 / 23:50
1

Para executar um script python, use python :

python script.py
    
por kos 26.02.2015 / 23:38
0

Provavelmente, você precisa torná-lo executável.

chmod +x /path/to/your/file.py
    
por user300458 26.02.2015 / 23:38
0

Esta pergunta é respondida aqui: Executando o arquivo Python no terminal
Se nada disso funcionar:

Você pode salvar seu código como um script no gedit com uma extensão de arquivo .py, por exemplo. exampleFile.py

Mas na primeira linha, adicione #!/usr/bin/python e salve.

Torne o script executável digitando

chmod +x exampleFile.py 

no terminal.

(Eu costumo salvar scripts em um diretório separado e chamar o diretório no terminal via cd exampleDirectory e, em seguida, executar scripts nesse diretório específico)
[também é possível verificar se o script está em seu diretório digitando o comando l no terminal para listar os arquivos nesse diretório e o script deve estar verde se for executável]

Depois, você pode chamar o script para ser executado no terminal:

python exampleFile.py

Você pode substituir python por python3 em todas as áreas que python foi listado, se você preferir essa versão

Além disso, você pode usar o vim ou outro software de terceiros para escrever e executar scripts python se nada disso funcionar.

    
por Benjamin 27.02.2015 / 04:09