#Python3 模块 #把定义的方法和变量存放在文件中,为一些脚本或者交互式的解释器实例使用,这个文件被称为模块。 #模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。 import sys print('命令行参数如下:') print('\n\nPython 路径为:',sys.path,'\n') #return #Python 路径为: ['D:\\mygit\\Python3_lesson', 'D:\\mygit\\Python3_lesson', 'D:\\软件安装\\Python\\python36.zip', 'D:\\软件安装\\Python\\DLLs', 'D:\\软件安装\\Python\\lib', 'D:\\软件安装\\Python', 'D:\\软件安装\\Python\\lib\\site-packages'] #import语句 #想使用Python源文件,只需在另一个源文件里执行import语句,语法如下: #import module1[,module[,...moduleN]] #当解释器遇到import语句,如果模块在当前的搜索路径就会被导入。 #搜索路径是一个解释器会先进行搜索的所有目录列表。如果要导入模块support,需要把命令放在脚本的顶端: #support.py文件代码为: #!/usr/bin/Python3 # Filenamr:support.py # def print_func(par): # print("Hello:",par) # return import support support.print_func("Jack") #return Hello: Jack ##一个模块只会被导入一次,不管你执行多少次import。这样可以防止导入模块被一遍又一遍地执行。 #当我们使用import语句的时候,Python解释器是怎样找到对应的文件的呢? #这就涉及到Python的搜索路径,搜索路径是由一系列目录名组成的,Python解释器就依次从这些目录中去寻找所引入的模块。 #这看起来很像环境变量,事实上,也可以通过定义环境变量的方式来确定搜索路径。 #搜索路径是在Python编译或安装的时候确定的,安装新的库应该也会修改。搜索路径被存储在sys模块中的path变量, #from...import语句 #Python的from语句让你从模块中导入一个指定的部分到当前命令空间中,语法如下: #from modname import name1[,name2[,...nameN]] #例如,要导入模块support的print_func函数,使用如下语句: from support import print_func print_func("Jcak") #return Hello: Jcak #from...import * 语句 #把一个模块的所有内容全部都导入到当前的命名空间也是可行的,只需要使用如下声明: #from modname import * #这提供了一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多地使用。 #深入模块 #模块除了方法定义,还可以包括可执行的代码。这些代码一般用来初始化这个模块。这些代码只有在第一次被导入时才会被执行。 #每个模块有各自独立的符号表,在模块内部为所有的函数当作全局符号表来使用。 #所以,模块的作者可以放心大胆的在模块内部使用这些全局变量,而不用担心把其他用户的全局变量搞花。 #从另一方面,当你确定知道你在做什么的话,你也可以通过modname.itemname这样的表示法来访问模块内的函数。 #模块是可以导入其他模块的。在一个模块(或者脚本,或者其他地方)的最前面使用import来导入一个模块,当然这只是一个 #惯例,而不是强制的,被导入的模块的名称将被放入当前操作的模块的符号表中。 #__name__属性 #一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的 #某一程序块不执行,我们可以用_name_属性来使该程序块仅在该模块自身运行时执行。 #Filename : using_name.py #if __name__=='__main__': # print('程序自身在运行') # else: # print('我来自另一个模块') import using_name #return 我来自另一模块 #每个模块都有一个__name__属性,当其值时'__main__'时,表明该模块自身在运行,否则是被引入。 #dir()函数 #内置的函数dir()可以找到模块内定义的所有名称。以一个字符串列表的形式返回: print(dir(using_name)) #return ['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']
Python3简单教程(七)Python3模块
最新推荐文章于 2023-05-22 13:07:33 发布