2013-02-13 25 views
6

Tôi đang cố gắng tìm hiểu python và vấp vào những gì có vẻ là một lỗi ngu ngốc trên một phần của tôi.Không có đầu ra cho `python.exe -c 'in (" hello ")'`

Với phiên bản 2.7.3 mà tôi đã tải xuống từ python.org Tôi không nhận được bất kỳ đầu ra nào cho một chương trình đơn giản với -c. I do lấy đầu ra với bản phát hành 2.6.8 từ Cygwin.

Tôi đang thiếu gì?

> 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

Tôi sẽ thử in một le chỉ để xem điều gì sẽ xảy ra. –

Trả lời

5

Hãy thử nó mà không có dấu nháy đơn xung quanh chương trình:

python -c print(\"hello\") 

Với các dấu nháy đơn, tôi đoán nó diễn giải đầu vào như là một chuỗi như vậy không làm in. Bạn cũng cần phải thoát khỏi các dấu ngoặc kép trong chính chương trình.

Edit:

Bạn không cần phải thoát khỏi dấu nháy đơn, vì vậy bạn có thể làm điều này thay vì:

python -c print('hello') 

hoặc

python -c "print('hello')" 

(đó là ví dụ ban đầu , chỉ với các loại trích dẫn được đổi chỗ)

+2

aargh. vấn đề không phải là với python nhưng tôi quên cách cmd.exe hoạt động. Tôi sẽ chấp nhận điều này trong 2 phút. –

+0

Tôi nghi ngờ bạn là người đầu tiên hoặc người cuối cùng để làm điều này, vì vậy nó là một câu hỏi hữu ích để có ở đây :-) –

+0

Đi bởi upvotes (cả bạn và của tôi) tôi chắc chắn dường như không phải là người duy nhất :) –

Các vấn đề liên quan