2015-02-26 12 views
7

ho iniziato ad utilizzare PyCharm e io non riesco ausando stdin in PyCharm

nella riga di comando che uso per eseguire il programma in questo modo:

python parse_file.py < test.txt 

quando parse_file.py può essere semplice come:

import sys 
for line in sys.stdin: 
    print line 

i cant trovare nella configurazione dove farlo ho provato qualcosa di simile typeing <test.txt nei parametri di script, ma senza fortuna

Ho guardato https://www.jetbrains.com/pycharm/help/run-debug-configuration-python.html

ma senza fortuna c'è anche

Grazie

+0

un modo è quello esegui il programma dal menu del terminale in pycharm $ python prog1.py Ajax

risposta

4

configurazioni La fuga di PyCharm non supportano il reindirizzamento input standard. Ti preghiamo di considerare di cambiare lo script in modo che legga direttamente il suo input da un file, e non attraverso il reindirizzamento degli input standard.

+0

Ad esempio, utilizzando 'fileinput': https://stackoverflow.com/a/23942485/911945 –

1

C'è una soluzione, ma non è portabile e dovrai adattarla al tuo sistema operativo. Lo descrivo per Windows.

  1. in File> Impostazioni> Strumenti> Strumenti esterni, creare una nuova configurazione, dargli un nome a vostra scelta (ad esempio: ingresso cmd reindirizzata).
  2. Nella parte inferiore del modulo, per Programma tipo cmd.exe. In Parametri, tipo /c "$JDKPath$ parse_file.py < test.txt" (i doppi apici sono importanti) e configurare la directory di lavoro alla cartella in cui sono memorizzati i file.
  3. Opzionalmente, è possibile giocare con macro (pulsanti sulla destra) per sostituire alcuni valori codificati con una variabile equivalente, che forse ti aiuterà a trasformare la configurazione dello strumento esterno in qualcosa di riutilizzabile.

Ora è possibile fare clic con il pulsante destro del mouse su un file nel progetto e selezionare "Strumento esterno> input cmd reindirizzato".

L'unica cosa fastidiosa con questo processo è che non sarà possibile rieseguire lo strumento esterno con una scorciatoia durante la modifica del codice. Per eseguire di nuovo, è necessario impostare la messa a fuoco sulla scheda 'Run', quindi utilizzare CTRL + F5 (o semplicemente fare clic sul triangolo verde Rerun 'ingresso cmd reindirizzato'

Spero che questo aiuto, saluti

+0

Non consente di eseguire il debug del programma. –