2016-01-23 50 views
-6

我已經學習了Python的The Hard Way的第13節。遵循了所有的規則和方向,以實現這一目標。我不是程序員,經常在需要逐步指導的地方遇到困難點。練習13:參數,拆包,變量 - 完全丟失

我已經完成了本節的所有工作,並且我已經命名了我的文件section12.py並保存到我的桌面。我試圖讓這個運行,但不知道如何讓它運行。

這是劇本,我鍵入它:

from sys import argv 

script, first, second, third = argv 

print "The script is called:", script 
print "Your first variable is:", first 
print "Your second variable is:", second 
print "Your third variable is:", third 

當我運行程序時,我得到以下信息:

========= RESTART: C:\Users\Photo Design Studio\Desktop\section12.py ========= 

Traceback (most recent call last): 
    File "C:\Users\Photo Design Studio\Desktop\section12.py", line 3, in <module> 
    script, first, second, third = argv 
ValueError: need more than 1 value to unpack 

根據所提供的信息,有人可以給我一步一步指導如何運行這個?

+3

你甚至在談論什麼? – ishaan

+2

打開命令行或終端,根據您的操作系統,將目錄更改爲具有該文件的目錄,輸入cd [cd] [目錄的完整路徑] [Enter],然後鍵入'python section12.py' [Enter],這應該讓它運行。 – Nikita

+1

這是第13節_學習Python的艱辛Way_?您可能希望閱讀[LPTHW Complaints](http://sopython.com/wiki/LPTHW_Complaints)... –

回答

0

錯誤的來源是第3行script, first, second, third = argv。 argv是一種查看給你的程序額外信息的方式。當您使用python section12.py致電您的程序時,argv被定義爲("section12.py",)。當您使用python section12.py 65致電您的程序時,argv被定義爲("section12.py", "65")。當你說script, first, second, third = argv時,你正在爲每個argv項目分配一個名稱。如果你只用python section12.py來調用你的程序,argv只有一個項目,但你試圖給它分配四個變量。錯誤是它沒有足夠的項目分配給這些變量。要修復它,請嘗試使用類似下面的方法調用您的程序:python section12.py myfirst mysecond mythird。擺弄它;玩的開心!

+0

我將python section12.py myfirst mysecond mythird添加到Python Shell GUI中,它給我一個語法錯誤。我在正確的地方打字嗎? –

+0

@GinjaNinja:您需要在命令提示符處鍵入'python section12.py myfirst mysecond mythird',在Python解釋器中輸入** not **。 –

+0

@PM 2Ring感謝您的意見。我已經這樣做了;我仍然收到錯誤:'python'不被識別爲內部或外部命令,可操作程序或批處理文件。該文件存儲在我的桌面上,如果有任何幫助。 –