學習Python是跟着《First Head Python》來的,所以也就跟着書的順序寫下去吧。
這章的內容講的是如何構建一個發佈和如何把模塊安裝到本地副本,書上是以Linux爲例子的。構建和安裝的命令有所不同,在這就稍微解釋一下。
在cmd中代開nester(書中的程序例子的名字)所在的位置,構建的命令爲:
setup.py.sdist
構建成功後,安裝到本地副本的命令爲:
setup.py install
如果源碼寫錯了,重新安裝就可以了。
模塊相當於java中包的概念。導入模塊是通過 from...import...和import...實現的,兩者不同的是如果直接使用的話,from...import...可以直接使用模塊裏的函數,而import則必須用類似nester.nester()的格式。實例如下:
. >>> caster = ['Jason','pink','flower','jane'] >>> from nester import nester >>> nester(caster) Jason pink flower jane import nester >>> netser(caster) Traceback (most recent call last): File "<pyshell#5>", line 1, in <module> netser(caster) NameError: name 'netser' is not defined >>> nester.nester(caster) Jason pink flower jane
構建好的模塊可以上傳到PyPi上供其他人使用。這部分暫時略過。
而後提到了函數的缺省值設置,例子就是嵌套的縮進問題:
nester.py源碼爲
def nester(movies): for each_movie in movies: if isinstance (each_movie,list): for each_item in each_movie: if isinstance (each_item,list): for each_bdy in each_item: print each_bdy else: print each_item else: print each_movie
是針對三級嵌套的。