好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Python 模块Ⅲ

globals() 和 locals() 函数

根据调用地方的不同,globals() 和 locals() 函数可被用来返回全局和局部命名空间里的名字。

如果在函数内部调用 locals(),返回的是所有能在该函数里访问的命名。

如果在函数内部调用 globals(),返回的是所有在该函数里能访问的全局名字。

两个函数的返回类型都是字典。所以名字们能用 keys() 函数摘取。

 

reload() 函数

当一个模块被导入到一个脚本,模块顶层部分的代码只会被执行一次。

因此,如果你想重新执行模块里顶层部分的代码,可以用 reload() 函数。该函数会重新导入之前导入过的模块。语法如下:

 

 

 在这里,module_name要直接放模块的名字,而不是一个字符串形式。比如想重载 hello 模块,如下:

 

 

 

Python中的包

包是一个分层次的文件目录结构,它定义了一个由模http://HdhCmsTestxuanhe.net/块及子包,和子包下的子包等组成的 Python 的应用环境。

简单来说,包就是文件夹,但该文件夹下必须存在 __init__.py 文件, 该文件的内容可以为空。 __init__.py  用于标识当前文件夹是一个包。

考虑一个在  package_hdhcms  目录下的  hdhcms1.py、hdhcms2.py、__init__.py  文件,test.py 为测试调用包的代码,目录结构如下:

 

 

 源代码如下:

 

 

 

 现在,在  package_hdhcms  目录下创建  __init__.py :

 

 然后我们在  package_hdhcms  同级目录下创建 test.py 来调用  package_hdhcms  包

 

 以上实例输出结果:

 

 如上,为了举例,我们只在每个文件里放置了一个函数,但其实你可以放置许多函数。你也可以在这些文件里定义Python的类,然后为这些类建一个包。

查看更多关于Python 模块Ⅲ的详细内容...

  阅读:19次