Como executar um arquivo Python no Notepad ++?

Respostas:

150

Primeira opção: (mais fácil, recomendada)

Abra o Notepad ++. No menu, vá para: Executar -> Executar .. (F5). Digitar:

C:\Python26\python.exe "$(FULL_CURRENT_PATH)"

Agora, em vez de pressionar executar, pressione salvar para criar um atalho para ele.

Notas

  • Se você possui o Python 3.1: digite em Python31vez dePython26
  • Adicione -ise você deseja que a janela da linha de comando permaneça aberta após a conclusão do script

Segunda opçao

Use um script em lote que execute o script Python e crie um atalho para isso no Notepad ++.

Conforme explicado aqui: http://it-ride.blogspot.com/2009/08/notepad-and-python.html


Terceira opção: (Não é seguro)

O código abre "HKEY_CURRENT_USER \ Software \ Python \ PythonCore", se a chave existir, ele obterá o caminho da primeira chave filha dessa chave.

Verifique se essa chave existe e, se não, você pode tentar criá-la.

Reshure
fonte
1
hmm, obrigado pela ajuda até agora. Eu tentei a opção 2, que não funcionou. Ele dizia: i37.tinypic.com/b4fhfm.jpg No Windows 7, esse pode ser o problema?
26
Abra o Notepad ++. No menu, vá para: Executar -> Executar .. (F5). Digite: cmd / K "$ (FULL_CURRENT_PATH)"
Ramiz Uddin
1
Eu não entendo a coisa do atalho. Eu salvo e dou uma combinação de atalhos, mas ele não será executado apenas pressionando essas teclas. O que estou fazendo de errado? Posso torná-lo um comando de plug-in e usá-lo quando a janela do console é selecionada. Mas isso derrota completamente o ponto.
precisa saber é o seguinte
3
Embora essa resposta (nº 3) pareça ser a mais comum que encontrei na Web, ela não funciona bem para mim. O problema é que ele executa tudo no diretório do Notepad ++. Assim, eu vim com a seguinte solução: cmd / c "taskkill / F / IM python.exe & cd $ (CURRENT_DIRECTORY) & C: \ Python27 \ python.exe -i" $ (CURRENT_DIRECTORY) \ $ (FILE_NAME ) "" Isso executa o código na pasta correta e deixa um intérprete aberto após a execução. Além disso, ele fechará qualquer outra janela python aberta que você tenha esquecido de fechar, como eu frequentemente faço.
copeland3300
6
Update: isso funciona para mim também: py -3 -i "$(FULL_CURRENT_PATH)". Link útil para entender o py -3comando: stackoverflow.com/questions/15912063/…
Gabriel Staples
42

A resposta de @ Ramiz Uddin definitivamente merece mais visibilidade:

  • Abra o Notepad ++
  • No menu, vá para: ExecutarExecutar .. (F5)
  • Digitar: cmd /K python "$(FULL_CURRENT_PATH)"
Matthieu Riegler
fonte
1
Isso funciona e é mais fácil de configurar o IMO. Adicione também -i para que a janela fique aberta cmd / K python -i "$ (FULL_CURRENT_PATH)"
SwampYeti 4/17/17
Vale ressaltar que esta solução requer a adição de Python ao seu PATH. Ele funciona através da abertura da linha de comando e digitandopython "$(FULL_CURRENT_PATH)"
Stevoisiak
Não funciona no Python 3. Para isso, veja minha resposta aqui: stackoverflow.com/a/48528175/4561887
Gabriel Staples
isso chama a janela cmd. podemos chamar o PowerShell?
Engenheiro Entusiasta
20

Aqui está o que funcionou para mim:

Abra o bloco de notas ++ e pressione F5. Você receberá uma pequena caixa pop-up:

Caixa pop-up para entrar no programa a ser executado

Digite: C: \ Python27 \ python.exe -i "$ (FULL_CURRENT_PATH)" para Python 2.7.

e, em seguida, Salvar como ... e escolha seu próprio conjunto de teclas para iniciá-lo sempre que desejar executar algo

loxsat
fonte
2
Essa é uma boa resposta concisa e eu indiquei meus estagiários quando eles montaram o NPP para desenvolvimento em Python. Mas eles estavam constantemente tendo problemas para entender onde digitar o comando, então adicionei um gráfico para reforçar suas instruções (claras para mim). Eles também tiveram alguns problemas para entender que a primeira parte do comando C:\Python27\python.exetinha que variar para refletir onde o próprio Python estava instalado, mas que a segunda metade -i "$(FULL_CURRENT_PATH)"era mágica que precisava ser digitada da maneira que está.
Anne Gunn
14

No menu, vá para: "Executar" -> "Executar ..." (ou apenas pressione F5).

Para Python 2, digite:

py -2 -i "$(FULL_CURRENT_PATH)"

Para Python 3, digite:

py -3 -i "$(FULL_CURRENT_PATH)"

Referências:

Para entender pymelhor o comando:

py -h

Outro link útil para entender o pycomando: Como executo python 2 e 3 no Windows 7?

Agradeço a Reshure por sua resposta que me colocou no caminho certo para descobrir isso.

Gabriel Staples
fonte
1
Acima. Usando isso com CTRL + ALT + Patalho.
akinuri
12

Primeiro instale o Python em https://www.python.org/downloads/

Execute o instalador

** IMPORTANTE ** Certifique-se de verificar os dois:

  • Instale o iniciador para todos os usuários
  • Adicione o Python 3.6 ao caminho

Clique em instalar agora e termine a instalação.

Abra o bloco de notas ++ e instale o plugin PyNPP no Plugin Manager. Estou usando o N ++ 6.9.2

Salve um novo arquivo como new.py

Digite N ++

import sys

print("Hello from Python!")
print("Your Python version is: " + sys.version) 

Pressione Alt + Shift + F5

Simples assim.

Adrian P.
fonte
truque para alterar o atalho: procure o atalho (não o nome). Desative o que poderia entrar em conflito.
23416 JinSnow
Opcional: simplesmente executar o script (qualquer script, não apenas python), você pode usar o plugin RunMe (mas se você executar um python console python não aparecerá)
JinSnow
7

Todas as respostas para a opção de menu Executar-> Executar acompanham a opção "/ K" do cmd, para que o terminal permaneça aberto ou "-i" para python.exe, para que o python force o modo interativo - para preservar a saída para você Observar.

No entanto, cmd /kvocê precisa digitar exitpara fechá-lo, no python -i- quit(). Se for digitar demais para o seu gosto (para mim, com certeza é :), o comando Executar a ser usado é

cmd /k C:\Python27\python.exe  "$(FULL_CURRENT_PATH)" & pause & exit

C:\Python27\python.exe- obviamente, o caminho completo para a instalação do seu python (ou apenas pythonse você quiser acompanhar o primeiro executável no caminho do usuário).

&é a execução incondicional do próximo comando no Windows - incondicional, pois é executado independentemente do RC do comando anterior ( &&é "e" - é executado apenas se o anterior for concluído com êxito, ||- é "ou").

pause- imprime "Pressione qualquer tecla para continuar..." e aguarda qualquer tecla (essa saída pode ser suprimida, se necessário).

exit - bem, digite a saída para você :)

Portanto, no final, as cmdexecuções python.exeque executam o arquivo atual e mantêm a janela aberta, pauseesperam que você pressione qualquer tecla e, exitfinalmente, feche a janela quando pressionar qualquer tecla.

Todor Minakov
fonte
1
esta resposta merece estar no topo
Ali80
1
melhor solução que eu já vi tão bem.
Erik Warming
7

Eu também queria executar arquivos python diretamente do Notepad ++. A opção mais comum encontrada online está usando a opção incorporada Run. Então você tem duas opções:

  1. Execute o arquivo python no console (no Windows é Prompt de Comando ) com código semelhante a este (links:) :insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui

    C:\Path\to\Python\python.exe "$(FULL_CURRENT_PATH)"

    (Se a janela do console fechar imediatamente após a execução, você poderá adicionar cmd /kao seu código . Links:) Isso funciona bem e você pode até executar arquivos no modo interativo adicionando ao seu código (links:) .insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui-iinsira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui

  2. Execute o programa python no IDLE com código semelhante a este (links :, nesses links é usado, mas eu estou usando , porque define o diretório de trabalho atual correto automaticamente):insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aquiC:\Path\to\Python\Lib\idlelib\idle.pyC:\Path\to\Python\Lib\idlelib\idle.batidle.bat

    C:\Path\to\Python\Lib\idlelib\idle.bat "$(FULL_CURRENT_PATH)"

    Na verdade, isso não executa o seu programa no IDLE Shell , mas abre o arquivo python no IDLE Editor e é necessário clicar Run Module(ou clicar em F5) para executar o programa. Por isso, ele abre seu arquivo no IDLE Editor e você precisa executá-lo a partir daí, o que anula o propósito de executar arquivos python no Notepad ++.

    Mas, pesquisando online, encontrei a opção que adiciona '-r' ao seu código (links:) :insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui

    C:\Path\to\Python\Lib\idlelib\idle.bat -r "$(FULL_CURRENT_PATH)"

    Isso executará seu programa python no IDLE Shell e, como está no IDLE, é por padrão no modo interativo.

O problema com a execução dos arquivos python via Runopção embutida é que toda vez que você executa o arquivo python, você abre um novo console ou janela IDLE e perde toda a saída das execuções anteriores. Isso pode não ser importante para alguns, mas quando comecei a programar em python, usei o Python IDLE , então me acostumei a executar o arquivo python várias vezes na mesma janela do IDLE Shell . O problema da execução de programas python no Notepad ++ é que você precisa salvar manualmente o arquivo e clicar em Run(ou pressionar F5). Para resolver esses problemas (AFAIK * ), você precisa usar os plug-ins do Notepad ++. O melhor plug-in para executar arquivos python no Notepad ++ é o NppExec . (Eu também tentei o PyNPP e o Python Script . PyNPP executa arquivos python no console, funciona, mas você pode fazer isso sem o plugin via Runopção incorporada e o Python Script é usado para executar scripts que interagem com o Notepad ++, para que você não possa executar seus arquivos python.) Para executar seu arquivo python com o NppExec plugin que você precisa acessar Plugins -> NppExec -> Executee, em seguida, digite algo como este (links:) :insira a descrição da imagem aqui insira a descrição da imagem aqui

C:\Path\to\Python\python.exe "$(FULL_CURRENT_PATH)"

Com o NppExec, você também pode salvar seu arquivo python antes de executar com o comando , definir o diretório de trabalho com o comando ou executar o programa python no modo interativo com o comando . Encontrei muitos links ( ) online que mencionam essas opções, mas o melhor uso do NppExec para executar programas python que encontrei no Manual do NppExec, que possui um capítulo com este código :npp_save cd "$(CURRENT_DIRECTORY)" -i insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui4.6.4. Running Python & wxPython

npp_console -  // disable any output to the Console
npp_save  // save current file (a .py file is expected)
cd "$(CURRENT_DIRECTORY)"  // use the current file's dir
set local @exit_cmd_silent = exit()  // allows to exit Python automatically
set local PATH_0 = $(SYS.PATH)  // current value of %PATH%
env_set PATH = $(SYS.PATH);C:\Python27  // use Python 2.7
npp_setfocus con  // set the focus to the Console
npp_console +  // enable output to the Console
python -i -u "$(FILE_NAME)"  // run Python's program interactively
npp_console -  // disable any output to the Console
env_set PATH = $(PATH_0)  // restore the value of %PATH%
npp_console +  // enable output to the Console

Tudo o que você precisa fazer é copiar esse código e alterar seu diretório python se você usar outra versão do python (por exemplo: * Estou usando o python 3.4, portanto, meu diretório é C:\Python34). Esse código funciona perfeitamente, mas há uma linha que eu adicionei a esse código para poder executar o programa python várias vezes sem perder a saída anterior:

npe_console m- a+

a+ é ativar o modo "anexar", que mantém o texto do console anterior e não o limpa.

m- desativa as mensagens internas do console (aquelas na cor verde)

O código final que eu uso na janela Executar do NppExec é:

npp_console -  // disable any output to the Console
npp_save  // save current file (a .py file is expected)
cd "$(CURRENT_DIRECTORY)"  // use the current file's dir
set local @exit_cmd_silent = exit()  // allows to exit Python automatically
set local PATH_0 = $(SYS.PATH)  // current value of %PATH%
env_set PATH = $(SYS.PATH);C:\Python34  // use Python 3.4
npp_setfocus con  // set the focus to the Console
npe_console m- a+
npp_console +  // enable output to the Console
python -i -u "$(FILE_NAME)"  // run Python's program interactively
npp_console -  // disable any output to the Console
env_set PATH = $(PATH_0)  // restore the value of %PATH%
npp_console +  // enable output to the Console

Você pode salvar o código do NppExec e atribuir uma tecla de atalho ao script desse NppExec. (Você precisa abrir as opções avançadas do plug-in do NppExec , selecionar seu script na Associated scriptlista suspensa, pressionar o botão Add/Modify, reinicie o Notepad ++, vá para Notepad ++ 'es Settings->Shortcut Mapper -> Plugin commands, selecione seu script, clique Modifye atribua uma tecla de atalho . para colocar F5como minha tecla de atalho, para fazer isso, você precisa alterar a tecla de atalho para a opção incorporada Runpara outra coisa primeiro.) Links para capítulos do Manual do NppExec que explicam como salvar o código do NppExec e atribuir uma tecla de atalho: NppExec's "Execute...", NppExec's script.

PS * : Com o plug-in NppExec, você pode adicionar Highlight Filters(encontrado em Console Output Filters...) que destacam determinadas linhas. Eu usá-lo para destacar linhas de erro em vermelho, para fazer isso você precisa adicionar Highlight masks: *File "%FILE%", line %LINE%, in <*>e Traceback (most recent call last):como este .

ands
fonte
A partir de 2018, esta é a melhor e mais completa resposta.
Jimmy He
6

Nenhuma das soluções propostas anteriormente funcionou para mim. É necessária uma pequena modificação.

Depois de pressionar F5 no Notepad ++, digite:

cmd /k "C:\Python27\python.exe $(FULL_CURRENT_PATH)"

O prompt de comando permanece aberto para que você possa ver a saída do seu script.

bartaelterman
fonte
5

Eu uso o plug-in NPP_Exec (encontrado no gerenciador de plug-ins). Depois de instalado, abra a janela do console (ctrl + ~) e digite:

cmd

Isso iniciará o prompt de comando. Então digite:

C:\Program Files\Notepad++> **python "$(FULL_CURRENT_PATH)"**

para executar o arquivo atual com o qual você está trabalhando.

erbaker
fonte
4

Eu gostaria que as pessoas aqui publicassem etapas em vez de apenas conceitos gerais. Acabei conseguindo a versão cmd / k para funcionar.

As instruções passo a passo são:

  1. Na NPP, clique no item de menu: Executar
  2. No submenu, clique em: Executar
  3. Na caixa de diálogo Executar ..., no campo O programa a ser executado, exclua qualquer texto existente e digite: cmd / K "$ (FULL_CURRENT_PATH)" O / K é opcional, mantém aberta a janela criada quando o script é executado , se você quiser isso.
  4. Clique no botão Salvar ...
  5. A caixa de diálogo Atalho é aberta; preencha se desejar um atalho de teclado (há uma nota dizendo "Isso desativará o acelerador", seja o que for, talvez você não queira usar o atalho de teclado, embora provavelmente não seja necessário atribuir um quando você não precisa de um acelerador). Em algum lugar, acho que você precisa informar à NPP onde está o arquivo Python.exe (por exemplo, para mim: C: \ Python33 \ python.exe). Não sei onde ou como você faz isso, mas ao tentar várias coisas aqui, pude fazer isso - não me lembro de qual tentativa fez o truque.
Harry Binswanger
fonte
Eu estou supondo que Python está apenas no seu caminho. Isso funciona para mim e é por isso que eu não tenho que lhe dizer NPP onde Python foi (E eu não acredito que haja qualquer lugar para contar NPP onde Python é)
Ryan
3

Nenhuma resposta aqui, ou o plugin que encontrei, desde que eu quisesse. Um método minimalista para iniciar meu código python que escrevi no Notepad ++ com o pressionar de um atalho, de preferência sem plugins.

Eu tenho o Python 3.6 (64 bits), para Windows 8.1 x86_64 e Notepad ++ 32bit. Depois de escrever seu script Python no Notepad ++ e salvá-lo, pressione F5 para Run. Então escreva:

"C:\Path\to\Python\python.exe" -i "$(FULL_CURRENT_PATH)"

e aperte o botão Executar. O isinalizador força o terminal a permanecer parado após a execução do código, para você inspecioná-lo. Este comando iniciará o script em um terminal cmd e o terminal continuará lá, até você fechá-lo, digitandoexit() .

Você pode salvar isso em um atalho por conveniência (o meu é CTRL + SHIFT + P).

Nikos
fonte
2

Há um problema que não vi resolvido nas soluções acima. Python define o diretório de trabalho atual para onde quer que você inicie o intérprete. Se você precisar que o diretório ativo atual seja o mesmo diretório em que você salvou o arquivo, poderá pressionar F5 e digitar o seguinte:

cmd /K cd "$(CURRENT_DIRECTORY)"&C:\Users\username\Python36-32\python.exe -i "$(FULL_CURRENT_PATH)"

Exceto se você substituísse C: \ Users \ nomedeusuário \ Python36-32 \ python.exe por qualquer caminho para o interpretador python em sua máquina.

Basicamente, você está iniciando a linha de comando, alterando o diretório para o diretório que contém o arquivo .py que está tentando executar e, em seguida, executando-o. Você pode encadear quantos comandos de linha de comando quiser com o símbolo '&'.

Ali Mizan
fonte
O Notepad ++ não reconhece o seu CURRENT_DIRECTORYcomo o diretório do arquivo de código.
Strpeter 21/03
2
Muito obrigado por esta resposta - estou lutando com o diretório atual há algum tempo. Eu fiz alguns mods tho: cmd /K cd "$(CURRENT_DIRECTORY)"&python "$(FULL_CURRENT_PATH)"&pause&exit Isso combina todos os elementos da resposta anterior.
Thornkey
2

Meu problema foi, como foi mencionado por copeland3300, que meu script está sendo executado na pasta notepad ++, por isso era impossível localizar outros arquivos de projeto, como arquivo de banco de dados, módulos etc. Resolvi o problema usando o comando padrão "Executar" do notepad ++ F5) e digitando:

cmd /k  "cd /d "$(CURRENT_DIRECTORY)" & python "$(FULL_CURRENT_PATH)""

Python estava no meu caminho. A janela Cmd permaneceu aberta após a conclusão do script.

farynaa
fonte
1

Estendendo a resposta do Reshure

  1. Abrir Executar → Executar ... no menu no Notepad ++ (atalho: F5)

  2. No espaço fornecido, digite:

    "$(FULL_CURRENT_PATH)"  -1
  3. Clique em Executar

ta da!

Aditya Shankar
fonte
também para tratamento de erros, envolva o código inteiro em uma tentativa, exceto no bloco, importe o traceback fora do bloco, exceto a tentativa (eu realmente não sei se você pode importar o traceback dentro) e, na parte exceto, adicione:traceback.print_exc();input()
Aditya Shankar
1

Gostaria de evitar o uso do caminho completo do diretório python na macro do Notepad ++. Eu tentei outras soluções fornecidas nesta página, elas falharam.

Aquele que trabalha no meu PC é:

No Notepad ++, pressione F5.

Copie / cole este:

cmd /k cd /d $(CURRENT_DIRECTORY) && py -3 -i $(FULL_CURRENT_PATH)

Entrar.

AdriZ
fonte
0

Comecei a usar o Notepad ++ para Python muito recentemente e achei esse método muito fácil. Quando estiver pronto para executar o código, clique com o botão direito na guia do seu código na janela do Notepad ++ e selecione "Abrir pasta contendo no cmd". Isso abrirá o prompt de comando na pasta em que o programa atual está armazenado. Tudo o que você precisa fazer agora é executar:

Pitão

Isso foi feito no Notepad ++ (Build 10 Jan 2015).

Não consigo adicionar as capturas de tela, então aqui está uma postagem de blog com as capturas de tela - http://coder-decoder.blogspot.in/2015/03/using-notepad-in-windows-to-edit-and.html

Rupam Das
fonte
0

No Notepad ++, vá em Executar → Executar ... , selecione o caminho e o idle.pyarquivo da sua instalação do Python:

C:\Python27\Lib\idlelib\idle.py

adicione um espaço e isto:

"$(FULL_CURRENT_PATH)"

e aqui está você!

Demonstração de vídeo:

https://www.youtube.com/watch?v=sJipYE1JT38

Marca
fonte
0

Caso alguém esteja interessado em passar argumentos para o cmd.exe e executar o script python em um ambiente virtual, estas são as etapas que eu usei:

No Bloco de notas ++ -> Executar -> Executar, insiro o seguinte:

cmd /C cd $(CURRENT_DIRECTORY) && "PATH_to_.bat_file" $(FULL_CURRENT_PATH)

Aqui, CD para o diretório em que o arquivo .py existe, para permitir o acesso a outros arquivos relevantes que estão no diretório do código .py.

E no arquivo .bat eu tenho:

@ECHO off
set File_Path=%1

call activate Venv
python %File_Path%
pause
Vandan
fonte
0

Você pode executar seu script via cmd e estar no diretório de scripts:

cmd /k cd /d $(CURRENT_DIRECTORY) && python $(FULL_CURRENT_PATH)
Jackssn
fonte
0

Normalmente, prefiro executar meus scripts python no shell interativo IDLE nativo python do que no prompt de comando ou algo assim. Eu tentei e funciona para mim. Basta abrir "Executar> Executar ..." e colar o código abaixo

python  -m idlelib.idle -r "$(FULL_CURRENT_PATH)"

Depois disso, você pode salvá-lo com sua tecla de atalho.

Você deve garantir que o python desejado seja adicionado e registrado nas variáveis ​​de ambiente.

Hzzkygcs
fonte