模块(module)简介

模块化——指将一个完整的程序分解为一个一个小的模块,通过将模块组合,来搭建出一个完整的程序。

模块化的特点:

① 方便开发

② 方便维护

③ 模块可以复用!

在Python中一个py文件就是一个模块,要想创建模块,实际上就是创建一个python文件

  • 注意:模块名要符号标识符的规范

模块的使用

# 在一个模块中引入外部模块
# ① import 模块名 (模块名,就是python文件的名字,注意不要py)
# ② import 模块名 as 模块别名
# - 可以引入同一个模块多次,但是模块的实例只会创建一个
# - import可以在程序的任意位置调用,但是一般情况下,import语句都会统一写在程序的开头
# - 在每一个模块内部都有一个__name__属性,通过这个属性可以获取到模块的名字
# - __name__属性值为 __main__的模块是主模块,一个程序中只会有一个主模块
# 主模块就是我们直接通过 python 执行的模块
import test_module as test # print(test.__name__)
print(__name__) # 也可以只引入模块中的部分内容
# 语法 from 模块名 import 变量,变量....
# from m import Person
# from m import test
# from m import Person,test

包Package

  • 包————也是一个模块,当我们模块中代码过多时,或者一个模块需要被分解为多个模块时,这时就需要使用到包,普通的模块就是一个py文件,而包是一个文件夹
  • 包中必须要一个一个 init.py 这个文件,这个文件中可以包含有包中的主要内容
#语法:from  包   import 普通模块
from Bao import A , B print(A.a)
print(B.b)

__pycache__文件

  1. python在运行模块时会自动生成__pycache__文件
  2. pycache 是模块的缓存文件
  3. py代码在执行前,需要被解析器先转换为机器码,然后再执行
  4. 所以我们在使用模块(包)时,也需要将模块的代码先转换为机器码然后再交由计算机执行
  5. 而为了提高程序运行的性能,python会在编译过一次以后,将代码保存到一个缓存文件中
  6. 这样在下次加载这个模块(包)时,就可以不再重新编译而是直接加载缓存中编译好的代码即可

python标准库

强大的python为我们提供里一个模块的标准库,并且模块的标准库会随着python的安装一同安装,我们只需要引用就可以应用


python常用的内置标准模块

模块名 描述 官网连接
sys 与python解释器及其环境操作相关的标准库 https://docs.python.org/3/library/sys.html#module-sys
time 提供与时间相关的各种函数的标准库 https://docs.python.org/3/library/time.html#module-time
OS 提供了访问操作系统服务功能的标准库 https://docs.python.org/3/library/os.html#module-os
calendar 提供与日期相关的各种函数的标准库 https://docs.python.org/3/library/calendar.html#module-calendar
urllib 用于读取来自网上(服务器上)的数据的标准库 https://docs.python.org/3/library/urllib.html#module-urllib
json 用于使用JSON序列化和反序列化对象 https://docs.python.org/3/library/json.html#module-json
re 用于在字符串中执行正则表达式匹配和替换 https://docs.python.org/3/library/re.html#module-re
math 提供算术运算函数的标准库 https://docs.python.org/3/library/math.html#module-math
decimal 用于进行精确控制运算精度、有效数位和四舍五入操作的十进制运算 https://docs.python.org/3/library/decimal.html#module-decimal
shutil 用于进行高级文件操作,如复制、移动和重命名等 https://docs.python.org/zh-cn/3/library/shutil.html#module-shutil
logging 提供了灵活的记录事件、错误、警告和调试信息等日志信息的功能 https://docs.python.org/zh-cn/3/library/logging.html#module-logging
tkinter 使用Python进行GUI编程的标准库 https://docs.python.org/3/library/tkinter.html#module-tkinter

第三方模块的下载与安装

由于python代码为开源,所有由很多大牛二次开发了很多牛逼的模块,便捷,功能强大。

我们可以通过pip工具安装python所需要的环境包

pip list           #列出已安装的包
pip install xxx #安装要安装的包
pip install django==.1.1.5 #安装特定版本
pip freeze > environment.txt #导出python的环境
pip install -r environment.txt #从导出的python环境中安装所需要的包
pip uninstall -r environment.txt #卸载导出的python环境中的包
pip install -U <包名> #升级包
pip show -f <包名> #显示包所在的目录
pip search <搜索关键字> #搜索包
pip list -o #查询可升级的包
pip install <包名> -d <目录> 或 pip install -d <目录> -r environment.txt #下载包而不安装


python——模块、标准库、第三方模块安装的更多相关文章

  1. Python OS模块标准库的系统接口及操作方法

    Python OS模块标准库的系统接口及操作方法 os.name 返回当前操作系统名,定义了'posix','nt','mac','os2','ce','java'(我使用win7/python3.1 ...

  2. [python标准库]Pickle模块

    Pickle-------python对象序列化 本文主要阐述以下几点: 1.pickle模块简介 2.pickle模块提供的方法 3.注意事项 4.实例解析 1.pickle模块简介 The pic ...

  3. [python标准库]XML模块

    1.什么是XML XML是可扩展标记语言(Extensible Markup Language)的缩写,其中的 标记(markup)是关键部分.您可以创建内容,然后使用限定标记标记它,从而使每个单词. ...

  4. Python 标准库 ConfigParser 模块 的使用

    Python 标准库 ConfigParser 模块 的使用 demo #!/usr/bin/env python # coding=utf-8 import ConfigParser import ...

  5. Python标准库——collections模块的Counter类

    1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...

  6. Python 3标准库 第十四章 应用构建模块

    Python 3标准库 The Python3 Standard Library by  Example -----------------------------------------第十四章   ...

  7. python常用标准库(os系统模块、shutil文件操作模块)

    常用的标准库 系统模块 import os 系统模块用于对系统进行操作. 常用方法 os模块的常用方法有数十种之多,本文中只选出最常用的几种,其余的还有权限操作.文件的删除创建等详细资料可以参考官方文 ...

  8. python常用标准库(math数学模块和random随机模块)

    常用的标准库 数学模块 import math ceil -- 上取整 对一个数向上取整(进一法),取相邻最近的两个整数的最大值. import math res = math.ceil(4.1) p ...

  9. Python学习手册之__main__ 模块,常用第三方模块和打包发布

    在上一篇文章中,我们介绍了 Python 的 元组拆包.三元运算符和对 Python 的 else 语句进行了深入讲解,现在我们介绍 Python 的 __main__ 模块.常用第三方模块和打包发布 ...

  10. Python的标准库介绍与常用的第三方库

    Python的标准库介绍与常用的第三方库 Python的标准库: datetime:为日期和时间的处理提供了简单和复杂的方法. zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip, ...

随机推荐

  1. Spring中ApplicationContextAware接口的用法

    1.为什么使用AppplicationContextAware? ApplicationContext的BeanFactory 的子类, 拥有更强大的功能,ApplicationContext可以在服 ...

  2. 每日一个linux命令5 -- rm

    rm命令.rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是删除了链接,原有文件均保持不变. rm是一个危险的命 ...

  3. linux系统操作系统网卡漂移解决方案及问题原因

    一.问题描述 公司有100-150台服务器安装RHEL7.4&中标麒麟7.4系统,为方便编辑配置网卡,使用脚本方式配置为biosname=0,ifname=0,目的是为将en1o2p此类长字符 ...

  4. 使用javafx开发一款桌面个性化软件

    本来笔者只是打算开发一个显示在桌面的cpu和内存监控工具,没想到迭代了几次版本之后变成了桌面个性化工具了. 目前实现功能: cpu和内存的实时监控 开机自动启动 自定义logo 自定义主题颜色 鼠标拖 ...

  5. ASP.NET 上传文件到共享文件夹

    创建共享文件夹参考资料:https://www.cnblogs.com/dansediao/p/5712657.html 上传文件代码 web.config <!--上传文件配置,UploadP ...

  6. If you see someone without smile

    If you see someone without smile, give them one of yours. 难怪我每次和不认识的人说话都放肆大笑.

  7. Java进阶专题(二十一) 消息中间件架构体系(3)-- Kafka研究

    前言 Kafka 是一款分布式消息发布和订阅系统,具有高性能.高吞吐量的特点而被广泛应用与大数据传输场景.它是由 LinkedIn 公司开发,使用 Scala 语言编写,之后成为 Apache 基金会 ...

  8. 【Linux】find查找空文件夹

    linux下批量删除空文件(大小等于0的文件)的方法 find . -name "*" -type f -size 0c | xargs -n 1 rm -f 就是删除1k大小的文 ...

  9. 【Oracle】substr()函数详解

    Oracle的substr函数简单用法 substr(字符串,截取开始位置,截取长度) //返回截取的字 substr('Hello World',0,1) //返回结果为 'H'  *从字符串第一个 ...

  10. OLE NumberFormat

    设置单元格的数字格式, $3.00 想搞出这样的格式,在VBA里的格式定义如下 $#,##0.00;-$#,##0.00 可是在abap里,就是不行.最后尝试了很多次,原来在在$前面加\变成\$#,# ...