美文网首页
python学习笔记之--模块

python学习笔记之--模块

作者: itsenlin | 来源:发表于2022-01-09 18:01 被阅读0次

定义

  • 模块:python语言对代码的一种逻辑组织方式,一个.py文件就称为一个python模块,里面可以包含变量、函数、类等的定义
  • 包:类似java语言,python语言中组织模块的方式是通过包,就是存放模块的一个文件夹,但是要求必须有__init__.py文件存在;包下面可以有子包存在,最下一级是模块

使用方式

python类似于go语言,因为有大量的模块才方便了开发,在程序中使用其他人员开发的模块有下面几种方式

  • import语句
    可以一行导入一个模块
    import module1
    import module2
    ......
    import moduleN
    
    也可以一行导入多个模块
    import module1[,module2[, ... moduleN]]
    
  • from-import语句
    实现从一个模块中导入模块的属性(变量、函数、类等),语法如下
    from module import name1[,name2[, ... nameN]]
    
  • 扩展import语句as
    对导入的名称起一个别名,在当前程序中可以使用别名来代替对应导入的名称,在导入名称比较长时比较有用,语法如下
    import module as aliasName
    form module import name as aliasName
    

注意,如果是包下面的模块,则模块名需要使用包名[.子包名].module形式;例如xml包结构如下:
itsenlin@itsenlin-PC:/usr/local/lib/python3.8/xml$ tree -L 2
.
├── dom
│ ├── domreg.py
│ ├── expatbuilder.py
│ ├── init.py
│ ├── minicompat.py
│ ├── minidom.py
│ ├── NodeFilter.py
│ ├── pulldom.py
│ └── xmlbuilder.py
├── etree
│ ├── cElementTree.py
│ ├── ElementInclude.py
│ ├── ElementPath.py
│ ├── ElementTree.py
│ └── init.py
├── init.py
├── parsers
│ ├── expat.py
│ └── init.py
└── sax
├── _exceptions.py
├── expatreader.py
├── handler.py
├── init.py
├── saxutils.py
└── xmlreader.py
itsenlin@itsenlin-PC:
例如导入domreg模块,需要使用如下语句
import xml.dom.domreg

常用标准库

os模块

与操作系统接口相关

sys模块

与命令行参数、错误程序输出重定向、退出等 相关操作

re模块

正则表达式相关操作

math模块

与数学运算相关操作

datetime模块

与日期、时间相关的操作

logging椟

与日志记录相关的操作

json包

所有与json格式相关的操作都在json包中实现

xml包

所有与xml格式相关的操作都在xml包中实现

http包和urllib包

与网络相关的操作在http包和urllib包内部实现

注意

  • 模块可以被多次导入,但只在第一次导入时模块被执行,也即被导入模块的顶层代码被执行,这就使用__name__属性,参见基础语法中的模块一节

  • 在工程比较大时,有可能会出现循环导入的情况,即a模块中导入b模块,b模块中又导入了a模块;会导致ImportError错误,一般通过架构设计避免这种情况;或者其中一个模块中对应import语句放在函数内部或者文件末尾来解决,要视情况而定

相关文章

  • Python ☞ day 7

    Python学习笔记之 date & datetime & 模块 & 包 & 第三方模块安装 时间 UTC(世界协...

  • 大师兄的Python学习笔记(十): 多进程和多线程

    大师兄的Python学习笔记(九): logging模块与日志大师兄的Python学习笔记(十一): 时间模块ti...

  • Python ☞ day 11

    Python学习笔记之 正则表达式 re模块概述:Python自1.5以后增加了re的模块,提供了正则表达式模式...

  • Python ☞ day 6

    Python学习笔记之 os模块 & 递归函数 & 栈 & 队列 os模块:包含了普遍的操作系统的功能 有些方法存...

  • Python常用模块

    Python常用模块之time模块 Python常用模块之os模块 Python常用模块之sys模块 Python...

  • Python学习笔记

    Python学习笔记 模块 为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为包(Package...

  • Python学习笔记之模块

    本篇主要介绍Python模块和如何将模块导入编程环境中,模块是用来组织代码的方法。 模块(module) 模块支持...

  • python学习笔记之--模块

    定义 模块:python语言对代码的一种逻辑组织方式,一个.py文件就称为一个python模块,里面可以包含变量、...

  • python shutil模块批量操作文件(移动 复制 打包

    python之模块之shutil模块 参考: python之模块之shutil模块 https://www.cnb...

  • PyMoTW-3 python常用模块简介

    PyMoTW介绍python中的常用模块,此文章为PyMoTW下的python3的常用模块学习笔记。 1. Tex...

网友评论

      本文标题:python学习笔记之--模块

      本文链接:https://www.haomeiwen.com/subject/ftwucrtx.html