在Python中,可以使用Function来实现代码重用。如果需要重用一组function,则需要使用Modules。
对于Modules,可以使用两种方法编写。第一、也是最简单的方法,就是使用Python编写。可以创建一个后缀名为.py的文件,在其中编写函数和变量。另外一种方法是直接使用本机语言,例如c。在python中可以直接使用。
对于代码重用,存在的一个问题是如何搜寻可重用的代码。对于c/c++,它们需要实现编译、连接,所以不需要动态搜寻。而对于解释型语言,如java,需要动态加载。在java中,存在classpath的概念。也就是说,虚拟机对于程序中需要使用资源,会动态的再classpath中搜寻。对于Python而言,思路基本上相同。Python的解释器会在系统路径(sys.path)中搜索。需要注意的当前路径总是在sys.path中。也就是说,如果需要使用某个modules,只要将.py文件放在当前目录下即可。
在代码中,如果使用其他模块,则用关键字import来引用。例如,获取sys.path信息:
还有一种引入modules的方式:from..import..。意为从指定模块中引入指定的函数或变量,这样在使用这些函数或模块时,就不需要使用modules的名称来引用了。例如:
这样在程序中就可以直接使用path变量了。如果需要引用指定模块内的所有函数或变量,可以使用 from modulename import *。
模块(modules)是组织函数和类的一种方式,package是组织modules的方式。
Package是存放.py文件的文件夹,只不过需要在这个文件夹下放置__init__.py的文件,以表示这个文件夹下有Python的modules。如果需要使用这个package,只需将这个文件夹放在sys.path的路径下就可以了。
最后,补充一个小的知识点——dir函数。使用dir函数,可以获得modules或function内部的变量和函数定义。dir接受任何类型的对象参数。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛