2010-10-22 7 views
28

Non mi chiamerei programmatore, ma ho iniziato a imparare Python di recente e mi diverto molto.Quale IDE Python può eseguire il mio script riga per riga?

Lo uso principalmente per piccoli compiti fino ad ora - scripting, elaborazione testi, generazione KML e ArcGIS.

Dalla mia esperienza con R (lavorando con eccellente Notepad ++ e NppToR combo) di solito provo a lavorare con i miei script riga per riga (o regione per regione) per capire cosa sta facendo ogni passo del mio script .. e per verificare i risultati al volo.

La mia domanda: c'è l'IDE (o l'editor?) Per Windows che consente di valutare una singola riga di script Python?

ho haveseenquite un sacco di discussione per quanto riguarda gli IDE in contesto Python .. ma havent stubled su questa specifica questione finora.

Grazie per l'aiuto!

+3

Si chiama "Read-Esegui-Print-Loop" REPL. È così che funziona Python. Digiti la riga di codice. Esegue la riga di codice. Se sei stanco di scrivere, anche copiare e incollare da uno script funziona bene. Dal momento che hai già questo, cosa stai chiedendo? –

+3

Ne sono consapevole. Copiare/incollare script che diventano grandi può essere piuttosto noioso. – radek

+0

L'esecuzione di uno script "grande" una riga alla volta può essere piuttosto noiosa, però. –

risposta

13

Se ti piace il layout di R. Consiglio vivamente di provare Spyder. Se stai usando windows, prova Python (x, y). È un pacchetto con pochi editor diversi e molti moduli extra comuni come scipy e numpy.

+0

Bingo. Da quello che ho provato finora, Spyder sembra geniale. Ctrl + F9 esegue la selezione del codice. Il pacchetto Python (x, y) viene fornito con tutti gli altri gadget per iniziare a conoscere, incluso Eclipse, consigliato anche da altri. Grazie! – radek

+1

Con Spyder 2.3.5.2 e Windows 7 lo shorcut della tastiera sembra essere 'F9'. – np8

+2

Ma come eseguire una riga corrente e spostare il cursore sulla riga successiva come R? – Heisenberg

5

Non è un IDE, ma è possibile utilizzare pdb per eseguire il debug e scorrere il codice Python. So che Emacs ha sviluppato il supporto per questo, ma non tanto per altri editor (o IDE) che verranno eseguiti in Windows.

+0

Grazie Nathon. Ho già sentito molti commenti positivi su Emacs. Soprattutto che offre un ottimo supporto anche per R. Dovrò provarlo, credo. – radek

7

L'unico che ho avuto successo con è Eclipse con Pydev

+2

Eclipse con PyDev è un'ottima scelta. Passare attraverso il codice, dentro e fuori le chiamate di funzione, i loop in giro, ecc., Si ottiene facilmente tramite punti di interruzione quando si esegue in modalità di debug. Include inoltre il completamento del codice, il supporto all'importazione, l'analisi della sintassi e altre fantastiche funzionalità. Ho usato la combinazione su più distribuzioni Linux e Windows 32 e 64 bit senza difficoltà. –

+0

Grazie phasetwenty. PyDev sembra spesso venire in cima [http://stackoverflow.com/questions/81584/what-ide-to-use-for-python]. Potrebbe essere il momento di dargli un giro. – radek

4

PyCharm da JetBrains ha un bel debugger che è possibile scorrere con il codice.

Django e l'integrazione console costruite in.

+1

Pycharm ha anche la "Esegui selezione in console", che esegue la selezione se qualcosa è selezionato, e esegue la riga corrente se non è selezionato nulla, proprio come Ctrl + r in Rstudio. Credo che la keymap predefinita sia Alt + Shift + E, ma può essere modificata ad es. Ctrl + r –

3

WingIDE, ho usato con successo per oltre un anno, e molto soddisfatto.

+0

come? conosci il tasto di scelta rapida? – user31128

5

Se sei su Windows, dai una prova a Pyscripter - offre un debug completo, che ti consente di esaminare lo stato delle tue variabili in ogni fase del tuo codice.

0

Il Pythonwin IDE ha un built-in debugger a ti permette di passo attraverso il codice, ispezionare le variabili, ecc

http://starship.python.net/crew/mhammond/win32/Downloads.html

http://sourceforge.net/projects/pywin32/

Il pacchetto include anche un sacco di altre classi di utilità e moduli che sono molto utili quando si scrive codice Python per Windows (interfaccia con COM, ecc.).

E 'anche discusso nel libro O'Reilly Python Programming On Win32 di Mark Hammond.

0

Prendete il suggerimento: il Basic Python Read-Execute-Print-Loop (REPL) deve funzionare.

Vuoi prove?

Eccolo: gli IDE non offrono molte alternative. Se REPL non è stato efficace, ci sono molte alternative molto interessanti. Poiché REPL è così efficace, ci sono poche alternative.

Nota che lingue come Java devono avere un debugger passo passo perché non c'è REPL.

Ecco l'altro suggerimento.

Se si progetta bene il codice, è possibile importare le librerie di funzioni e classi ed esercitarli nel modello REPL. Molti, molti pacchetti Python sono documentati esercitando il pacchetto a livello REPL e copiando le interazioni.

La documentazione di Django - come un esempio - ha un sacco di sessioni interattive che dimostrano come le parti lavorano insieme al prompt REPL.

Questa non è una GUI. C'è piccolo puntamento e clic. Ma sembra essere efficace.

3

Uso Notepad ++ per la maggior parte del mio sviluppo basato su Python per Windows e per il debugging utilizzo Winpdb. È un debugger basato su GUI multipiattaforma. In realtà è possibile impostare una scorciatoia da tastiera in Notepad ++ per avviare il debugger sul tuo script corrente:

Per fare ciò vai su "Esegui" -> "Esegui ..." nel menu e inserisci quanto segue, assicurandoti che il percorso punti al file winpdb_.pyw:

C:\python26\Scripts\winpdb_.pyw "$(FULL_CURRENT_PATH)" 

quindi scegliere "Salva ..." e scegliere una scorciatoia che si desidera utilizzare per lanciare il debugger.

PS: È possibile anche impostare una scorciatoia per eseguire i vostri script python simile utilizzando questa stringa invece:

C:\python26\python.exe "$(FULL_CURRENT_PATH)" 
+0

Grazie offesa. Notepad ++ è solitamente anche la mia prima scelta. Soprattutto che puoi ben legarlo a R e Stata, dove lavoro la maggior parte del tempo. Anche l'editing di base in Python è facile. Non ho sentito parlare di Winpdb tho. Dovrà controllarlo. – radek

2

vorrei grassoccio per Emacs a tutto tondo.

Se siete alla ricerca di una funzione per eseguire codice riga per riga (o di una regione, se ne avete uno evidenziato), prova ad aggiungere questo ai vostri .emacs (sto usando python.el e Pymacs):

;; send current line to *Python 
(defun my-python-send-region (&optional beg end) 
(interactive) 
(let ((beg (cond (beg beg) 
       ((region-active-p) 
       (region-beginning)) 
       (t (line-beginning-position)))) 
    (end (cond (end end) 
       ((region-active-p) 
       (copy-marker (region-end))) 
       (t (line-end-position))))) 
(python-shell-send-region beg end))) 

(add-hook 'python-mode-hook 
     '(lambda() 
     (local-set-key [(shift return)] 'my-python-send-region))) 

L'ho associato a [shift-Return]. Questo è preso in prestito da here. C'è una combinazione di tasti simile per l'esecuzione dei file .R riga per riga here. Trovo entrambi a portata di mano.

+1

grazie per questo, ho anche aggiunto un '(python-nav-forward-statement)' alla fine del tuo let blocca per saltare alla riga successiva da eseguire. – joefromct

1

Mi piace vim-ipython. Con esso posso <ctrl>+s eseguire una linea specifica. O più linee selezionate su modalità visive. Dai un'occhiata a questo video demo.

0

è necessario impostare la scorciatoia da tastiera per "selezione run" in Strumenti> Preferenze> Tasti di scelta rapida

Quindi, selezionare la linea e ha colpito la "selezione run" scorciatoia

+0

E di quale editor stiamo parlando qui? – radek

+0

Mi dispiace, ho dimenticato di menzionare: io uso Spyder come editor – MasterJedi

2

Rodeo sembra essere nuovo concorrente sul mercato IDE e il docs indica che è possibile eseguire linee di codice. Devo anche ammettere che sembra e si comporta abbastanza bene finora!

enter image description here

Problemi correlati