洗礼灵魂,修炼python(12)--python关键词,包
关键词
1.什么是关键词:
就是系统已经定义好的一些关键词语法,可以直接使用,很明显的就是在IDE里这些关键词会高亮显示的就是
2.有哪些关键词:
前面我们一直在说关键词,内置函数,到底有哪些关键词对吧?怎么查看有哪些,学了模块之后,我们就可以导入一个keyword模块来查看:
使用keyword.kwlist查看系统关键词,注意:Python2中True/False不是关键字,但Python3中是,上面使用的是python2
使用keyword.iskeyword可以判断一个变量是否是关键词
包
1.什么是包:
包,即Package,包通常是一个目录,可以使用import导入包,或者from + import来导入包中的部分模块。包目录下为首的一个文件便是 __init__.py。然后是一些模块文件和子目录,假如子目录中也有 __init__.py 那么它就是这个包的子包了。是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境
2.为什么要使用包:
在创建许许多多模块后,有时候可能希望将某些功能相近的文件组织在同一文件夹下,这里就需要运用包的概念了。包对应于文件夹,使用包的方式跟模块也类似,唯一需要注意的是,当文件夹当作包使用时,文件夹需要包含__init__.py文件,主要是为了避免将文件夹名当作普通的字符串。__init__.py的内容可以为空,一般用来进行包的某些初始化工作或者设置__all__值,__all__是在from package-name import *这语句使用的,全部导出定义过的模块
3.创建包:
使用pycharm就能很方便的创建一个包:
1):要在哪个文件夹下创建就对其右键
2):选择新建-python package
3):给包命名-确定
4):创建好后将自带一个__init__.py的文件
然后你再在里面创建你需要的文件即可
注意:就是因为在这个__init__.py文件,因为使用from ……import * 只导入在__init__.py文件内的模块/函数,如果里面没有包含你自己创建的py文件名的话,则不被导入,不管是系统包还是你自己创建的包都是这样
4.导入包:
1).import 包名
2).from …包名…import …模块名…
3).from …包名…import * ——这个方法可以将默认的一些方法导入进来,但是注意不会导入全部的
因为导入方法和导入模块一样,我就随便举个例子就行:
python3:
从这里可以看到,当我导入urllib时,并没有将request一起导入,因为request不在__init__.py里面
python2:
为什么两个版本差距那么大?
因为在python3中,已经把urllib合成了一个包:
要导入包,则得按照格式【包名.模块名】这样导入:
现在里面的方法就和python2差不多了。
从下一章开始将讲解常用模块,并从中穿插一些前面的知识作为复习