2011-08-30 66 views
4

下列文件位於此目錄中:/Users/whiteglider/DocumentsPYTHON-2.x第1行的語法錯誤,但我沒有看到任何?

文件的名稱:server.py

這就是我剛剛從http://www.tutorialspoint.com/python/python_networking.htm

import socket 

    s=socket.socket() 
    host=socket.gethostname() 
    port=12345 
    s.bind((host,port)) 

    s.listen(5) 
    while True: 
     c, addr = s.accept() 
     print 'Got connection from', addr 
     c.send ('Thank you for connecting') 
     c.close() 

複製,當我在終端運行它我的實踐代碼,我輸入

$ python /Users/whiteglider/Documents/server.py 

然後我得到:

File "/Users/whiteglider/Documents/server.py", line 1 
    {\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf540 
                ^
SyntaxError: unexpected character after line continuation character 

即使我改變目錄要在server.py文件實際上是和運行

python server.py 

我仍然得到同樣的結果。

(MAC豹10.5.8)

+0

在Python中查找語法錯誤的一個好的做法是找到英文的語法錯誤。例如,「我」這個詞絕不會寫成小寫。決不。練習修復這樣的事情和Python語法錯誤將隨之而來。 –

+1

@ S.Lott在這個特殊情況下沒有幫助。 – agf

+0

@agf:語法是語法。它很重要。很多。英語語法與Python語法一樣重要。一個充滿英語語法錯誤的問題是一個需要回答的問題,因爲它指出了編寫軟件所要求的「謹慎」和「精確」的更大和更深刻的問題。 –

回答

0

的「行連續字符」是典型地在一行的末尾反斜槓。 但是,我沒有看到你的例子。

你可以運行一個簡單的'你好世界'的應用程序,如下所示?

print 'hello world' 

從交互式提示符(保存在文件hello.py以上,並運行)

蟒蛇是否運行正常?

可能相關:你的文件有什麼樣的行尾? '\ n'或'\ r \ n'?我不認爲這是重要的,但是誰知道...

+0

仔細看看錯誤 - 他在文件中包含其他字符,而不是他在代碼塊中顯示的內容。 – agf

+0

啊,非常正確 - 感謝您修復格式 – jwd

8

您已將文件另存爲富文本格式文件而不是純文本文件。

我不知道你在用什麼編輯器,但一定要將文件保存爲純文本/ ASCII文本,類似的東西,而不是RTF。

+1

可能使用TextEdit.app。如果是這樣,您可以使用菜單選項「格式 - >生成純文本」將文件轉換爲純文本。 –

+0

謝謝,夥計們!我沒有檢查我的TextEdit的設置,它確實設置爲rtf,所以保存時,儘管我將擴展名重命名爲。py,我不認爲它會保留rtf格式。謝謝!關於「我」而不是「我」的使用,謝謝提醒。我認爲讓一些小事情鬆懈會讓其他重要的事情容易出錯!我嘗試了一個簡單的Hello World,它確實運行了!我感謝你的及時迴應,更強大的力量! – whiteglider

相關問題