1. 程式人生 > >習題13--引數、解包和變數

習題13--引數、解包和變數

一:程式碼
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

注: ①Argv即所謂的“引數變數”,這是一個非常標準的程式設計術語。 ②第三行將argv解包,與其將所有引數放到同一個變數下面,不如將每個引數賦值給一個變數:script、first、seconde和third。 解包描述:“把argv中的東西解包,將所有的引數依次賦值給左邊的這些變數。” ③我們使用import讓Python程式實現更多的特性。特性真正的名稱:模組/庫。 ④from sys import argv---將sys模組匯入進argv引數變數。 二:附加練習
1:給你的指令碼三個以下的引數,看看會得到什麼錯誤資訊。試著解釋一下。
2:再寫兩個指令碼,其中一個接受更少的引數,另一個接受更多的引數,在引數解包時給他們取一些有意義的變數名。 ①更少的引數
②更多的引數
3:將raw_input和argv一起使用,讓你的指令碼從使用者那裡得到更多的輸入。 ①argv在前
②raw_input在前,argv少寫一個值

三:常見問題回答 ①argv和raw_input()有什麼不同? 不同點在於使用者輸入的時機。如果引數是在使用者執行命令時輸入,那就是argv。如果是在指令碼執行過程中需要使用者輸入,那就使用raw_input()。