learn_Day9-13 模块
一、使用模块的注意事项
1.lib文件夹内存放的是内置模块
2.site-packages文件夹内存放的是第三方模块(第三方模块默认储存位置)
3.导入模块时尽量不用PyCharm给出的上级菜单
4.给自定义模块命名的时候不要与内置模块重名,如果重名内置模块将失去作用
5.导入模块等同于导入模块内的各种功能
6.导入单独py文件模块的两种方法
方法1:
from s1(模块名) import f1(函数名(功能))
f1(函数名)()
方法2:
import s1(模块名)
s1(模块名).f1(函数名)()
7.导入文件夹内py文件模块的三种方法
方法1:
from lib(文件夹).account(文件) import login(函数名)
login( )(函数)
方法2:
from lib(文件夹) import account(文件)
account(文件).login( )(函数)
方法3:
import lib(文件夹).account(文件)
lib(文件夹).account(文件).login( )(函数)
8.设置别名:
from lib import account as 别名
别名.login( )
9.导入制定文件夹(/Users/macpro1/Documents)下面的py文件
10.Python的优化机制:
文件在第一次导入时加载内存,第二次导入时不做操作
11.安装第三方模块
a、软件管理工具安装
pip3 install 模块名
终端直接运行,不需要进入python运行
b、源码安装
下载源码并解压,找到setup.py所在的文件夹
在终端运行 cd setup.py所在的文件夹的路径
python3 setup.py installpip install django
12.卸载第三方模块 pip unistall 模块名
13.vars()
- vars() python自动设置的全局变量
- 在py文件开头用三引号注释,表示是对py文件本身的注释
- __doc__ py文件本身的文件注释
- __file__ 文件路径
- __package__ 导入py文件(自定义模块)的位置(文件夹,目录),用“.”分割
- __cached__ 缓存,python2版本无此属性
- __name__ 默认 __main__:主文件执行主函数前用作判断
- “ ” 双引号在任一编程语言中均表示字符串
- [ ] 在python中表示列表,其他语言中表示数组
- { } 任一语言中均表示字典
1 """ 2 njksdk,smacboasehfk,nw 3 4 """ 5 6 print(vars()) 7 # {'__file__': '/Users/macpro1/PycharmProjects/Learn_qzkf/qz_day12/qz_day12_1_模块1补充.py', 8 # '__doc__': None, 9 # '__cached__': None, 10 # '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x1005a5d68>, 11 # '__package__': None, 12 # '__builtins__': <module 'builtins' (built-in)>, 13 # '__name__': '__main__', 14 # '__spec__': None} 15 print(__doc__) # njksdk,smacboasehfk,nw 16 17 a = '("11","22","33","alex")' 18 import json 19 a = json.loads(a) 20 print(a)
14.补充:
在python中所有的东西都称为对象
对象是由类创建
对象的功能都在与其相关的类中
在类中self.__class__表示当前类的名字
四、pickle模块与json模块 (序列化)
- json 用于【字符串】和 【python基本数据类型】 间进行转换
- pickle 用于【python特有的类型】 和 【python基本数据类型】间进行转换
八、requests模块 (使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装,从而使得Pythoner进行网络请求时,变得美好了许多,使用Requests可以轻而易举的完成浏览器可有的任何操作。)
九、xml模块 (实现不同语言或程序之间进行数据交换的协议)
十、 configparer模块 (处理特定格式的文件,其本质上是利用open来操作文件。)