2013-02-13 5 views
6

Ich versuche Python zu lernen und stolperte über etwas, das ein weiterer dummer Fehler von meiner Seite zu sein scheint.Keine Ausgabe für `python.exe -c 'print (" Hallo ")' '

Mit Version 2.7.3, die ich von python.org heruntergeladen habe, bekomme ich keine Ausgabe für ein einfaches Programm mit -c. I do erhalten Ausgabe mit der Version 2.6.8 von Cygwin.

Was fehlt mir?

> c:\Python27\python.exe --version 
Python 2.7.3 

> c:\Python27\python.exe -c 'print("hello")' 

> c:\Python27\python.exe 
Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> print("hello") 
hello 
>>> exit() 

> c:\cygwin\bin\python2.6.exe --version 
Python 2.6.8 

> c:\cygwin\bin\python2.6.exe -c 'print("hello")' 
hello 

> c:\cygwin\bin\python2.6.exe 
Python 2.6.8 (unknown, Jun 9 2012, 11:30:32) 
[GCC 4.5.3] on cygwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> exit() 
+0

Ich würde versuchen, zu einem fi drucken le nur um zu sehen, was passieren wird. –

Antwort

5

es ohne die einfachen Anführungszeichen um das Programm Versuchen:

python -c print(\"hello\") 

Mit den einfachen Anführungszeichen, ich denke, es ist die Eingabe interpretiert als ein String so den Druck nicht tut. Sie müssen auch die doppelten Anführungszeichen im Programm selbst umgehen.

Edit:

Sie brauchen keine einfache Anführungszeichen zu entkommen, so können Sie diese stattdessen tun können:

python -c print('hello') 

oder

python -c "print('hello')" 

(welche das ursprüngliche Beispiel ist , nur mit den Angebotstypen vertauscht)

+2

aargh. Das Problem ist nicht mit Python, aber ich vergesse, wie cmd.exe funktioniert. Ich werde das in 2 Minuten akzeptieren. –

+0

Ich bezweifle, dass du die erste oder letzte Person bist, die das macht, also ist es eine nützliche Frage hier zu haben :-) –

+0

Going by the upvotes (sowohl deine als auch meine) Ich bin ganz sicher nicht die Einzige :) –