学习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
是针对三级嵌套的。