15-Python之路-进阶-模块和包

模块

简介

  • 每一个以扩展名py结尾的Python源代码文件都是一个模块,模块名同样也是一个标识符,需要符合标识符的命名规则
  • 模块就是工具包,模块内的函数就是工具,想要使用工具,就要导入工具包(模块)

导入方式

  • import:导入,是一次性把模块中所有函数全部导入
  • import 模块名
    • 在导入模块时,每个导入应该独占一行
    • 通过模块名.使用模块提供的函数
  • import代码统一写在代码顶部,容易及时发现冲突,一旦发现冲突,可以使用 as关键字给其中一个函数起别名:import 模块名 as 模块别名
  • from...import:导入,导入模块部分函数
# 从模块导入某个工具
from 模块名 import 函数名
  • 如果两个模块,存在相同的函数,会被后导入的模块函数覆盖掉

模块的搜索顺序

  • 导入模块时,会先搜索当前目录指定模块名的文件,如果有就直接导入,没有,在搜索系统目录
  • 可以通过sys.path给出的列表查看目录里,依次要导入的模块文件,列表中的路径的先后顺序代表了Python解释器在搜索模块时的先后顺序
  • 可以通过sys.path.append('xxx')的方式添加路径,通过sys.path.insert(0,'xxx')可以确保先搜索这个路径
  • Python中每一个模块都有一个内置属性__file__可以查看模块完整路径

name属性

  • name_是Python的一个内置属性,记录着一个字符串,如果被其他文件导入,name就是模块名

  • 包是一个包含多个模块的特殊目录,目录下有一个特殊的文件:init.py
  • 包名的命名方式和变量名一致

发布模块

创建模块

  • 创建setup.py
from distutils.core import setup

setup(name="hm_message",    # 包名
    version="1.0",  # 版本
    description="itheima's 发送和接受消息模块",  # 描述信息
    long_description="完整的发送和接受消息模块",    # 完整描述信息
    author="xxx",   # 作者
    author_email="xxx@xxx.com", # 作者邮箱
    url="www.xxx.com",  # 主页
    py_modules=["hm_message.send_message","hm_message.receive_message"])
    

构建模块

$ python setup.py build

生成并发布压缩包

$ python setup.py sdist

安装模块

$ tar -zxvf hm_message-1.0.tar.gz       # 解压模块
$ sudo python setup.py install          $ 提权并进行模块安装

卸载模块

  • 直接从安装目录中,把安装的模块的目录删除就可以了

安装第三方模块

  • 第三方模块通常是指由知名的第三方团队开发,并且被广泛使用的Python包/模块

安装和卸载

$ sudo pip3 install 模块名         # 安装模块
$ sudo pip uninstall 模块名        # 卸载模块
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容