2011-12-26 115 views
0

我是python的新手。我只是下載了2.x版本,並試圖在編輯器中編寫一個簡單的'Hello world'程序,並在解釋器中運行它。這是我的代碼(我有什麼在IDLE):麻煩讓python啓動並運行

#!C:\Python27\python.exe 
#Filename: helloworld.py 

print('Hello World') 

這是我在解釋器中運行:

python helloworld.py 

而這一點,我得到的迴應:

SyntaxError: invalid syntax 

任何人都知道這裏發生了什麼?請幫忙。

澄清:

我要補充的是,程序上空閒的運行模塊命令運行。它在Python的命令行解釋器中不起作用。

+0

什麼是整個回溯(整個錯誤)?該代碼應該運行良好。 – Blender 2011-12-26 06:13:23

+0

@ Blender-- 文件 「」,1號線 蟒蛇helloworld.py 語法錯誤:無效的語法 – dopatraman 2011-12-26 06:18:27

+0

要試驗在2.7 Python 3的打印功能,使用方法:從__ __未來進口print_function – gimel 2011-12-26 06:36:46

回答

1

只需使用一點Google重新查看您的錯誤消息明確了您爲什麼會遇到錯誤。

你是否有機會在閒置提示符下運行你的程序?如果它說python helloworld.py這意味着它抱怨這行不是helloworld.py中的任何特定行。

剛剛從空閒中出來(你稱爲Interpreter)並從命令提示符運行。你不會得到那個有問題的錯誤。

除了其他人對打印聲明所說的話之外,如果您在windows下運行,腳本中的shebang是不必要的(但不是錯誤的)。這條線在* nix環境中是有意義的,在這個環境中shell從腳本的第一行確定解釋器。

只是爲了總結

如果你看到這樣

>>> python helloworld.py 

這是不對的。你不能在IDLE中調用python。

你需要在命令提示符下像

C:\python helloworld.py 

這是正確的

事實上,你可以不加任何修改運行原始腳本運行它。只要運行它的正確方法

注意***其他一些公司可能會說print語句並不在Python 2.7的功能使particulat語法是錯誤的。這部分是正確的

你實際上不調用打印功能。你剛剛附上了帶有pamentalhesis的字符串,這在句法上是正確的。

如果你有設置Python和運行在Windows上的問題,你可以開始關注兩件事情

  1. FAQ for Python on Windows
  2. 新手系列視頻教程,Running Python on XP
1

print不是Python 2.7中的函數。您必須改爲說print "Hello world!"

+0

@ Makoto - 我做了改變,但仍然得到相同的錯誤 – dopatraman 2011-12-26 06:24:05

+0

將新代碼添加到您的問題,讓我們再看看它。 – Makoto 2011-12-26 06:26:58

-2

在python3

print("helloworld") 

在python2.7

print "helloworld" 
+0

這不是他的問題。 – 2011-12-26 06:32:17

1

蟒蛇3.0和2.7的打印都支持括號......後來的2.x的變化部分進行了3越來越多的支持。 x語法來簡化轉換。任何人都說2.7不能擁有parens是明顯的錯誤,他們都工作。

由於您的打印是正確的,請嘗試刪除打印上方的空白區域和空白區域,然後查看它是否有效。由於您在執行命令行時明確聲明瞭解釋器,因此不需要shebang(僅當您執行類似「myScript.py」而不是「python myScript.py」的操作時才使用)

+0

...雖然在Python 2中,括號不會被識別爲函數參數分隔符,但它們只是簡單地將一個表達式括起來,就像您可以編寫'a =(b + c)'或'a = b + c'一樣。 – 2011-12-26 06:31:23

+0

雖然正確,但這與他的問題無關。 – 2011-12-26 06:59:15

+0

你認爲我認爲shebang本身有什麼問題......我正在測試無效的空格(因此「打印之上的空白」) – odgrim 2011-12-26 23:09:31

0

It just does not work in Python's command line interpreter.

的Python 沒有一個 「命令行解釋」。它有一個Python解釋器。你不要餵它的命令;你餵它Python代碼。例如,你可以在這裏輸入print("Hello, world!")

python helloworld.py是一個命令。它在系統命令行中使用。

假設你使用的是最近的一些Windows版本:應該有你的開始菜單中標記爲「命令提示符」的項目,否則搜索「cmd.exe的」。運行它。現在你有一個命令提示符。閃爍光標前的部分是「當前工作目錄」。您可以使用cd命令導航到您的.py文件所在的目錄(要在cd ..之上去一個目錄;在cd name_of_directory之後要進入子目錄),然後在之後問題python helloworld.py。這告訴Windows「運行程序python.exe,並把它傳遞helloworld.py作爲參數。Python中的一個單獨的副本啓動,它會自動打開helloworld.py並運行它。

空閒的‘運行模塊’命令(菜單項)做了同樣的。事情IDLE不是Python的,它是一個獨立的程序,討論到Python(python.exe)你這允許它包裹解釋與菜單項的窗口等等,給你的另一個窗口編輯.py文件,然後。哺養到Python也可以運行python沒有在命令行(在之前的步驟)的論點;這會給你的命令提示符窗口,在這裏你可以輸入Python代碼的單個語句並運行它們內部的Python解釋器的提示這對測試短片段通常很有用在編寫.py文件時的代碼。