当前位置: 首页 > article >正文

Python--模块(上)

1. 自定义模块

1.1 模块与包

  • 模块:单个.py​文件,包含函数、类或变量。

  • 包:包含多个模块的文件夹,需包含__init__.py​(Python 3中可省略)。

  • 项目结构示例:

    ├── my_package
    │   ├── __init__.py
    │   ├── utils.py    # 工具函数
    │   └── network
    │       ├── http.py # HTTP相关功能
    │       └── ftp.py  # FTP相关功能
    └── main.py         # 主程序
    

1.2 导入方式

绝对导入
  • 导入模块:

    import my_package.utils
    from my_package.network import http
    
  • 导入成员:

    from my_package.utils import encrypt, logger
    
相对导入(仅限包内使用)
  • 示例:

    # 在network/http.py中导入同级的ftp模块
    from . import ftp
    

1.3 别名与路径管理

  • 别名:

    from my_package.utils import encrypt as md5_encrypt
    import my_package.network.http as http_tool
    
  • 添加自定义路径:

    import sys
    sys.path.append("/path/to/your/module")
    

1.4 主文件机制

  • ​__name__​的作用:

    if __name__ == "__main__":
        # 仅当直接运行时执行
        start_program()
    

2. 第三方模块

2.1 pip安装

  • 基本命令:

    pip install requests              # 安装最新版
    pip install django==2.2          # 安装指定版本
    pip uninstall package_name       # 卸载
    
  • 配置国内镜像源:

    pip config set global.index-url https://pypi.douban.com/simple/
    

2.2 源码与Wheel安装

  • 源码安装:

    # 解压后进入目录
    python setup.py build
    python setup.py install
    
  • Wheel安装:

    pip install wheel
    pip install package_name.whl
    

http://www.kler.cn/a/564539.html

相关文章:

  • 【uniapp】在UniApp中实现持久化存储:安卓--导出数据为jsontxt
  • 一文5分钟掌握基于JWT的模拟登录爬取实战
  • Element实现el-dialog弹框移动、全屏功能
  • Ubuntu24.04设置静态IP地址
  • 多线程之旅:锁策略
  • 使用DeepSeek/chatgpt等AI工具辅助网络协议流量数据包分析
  • 大语言模型概念科普
  • 计算机毕业设计 ——jspssm510springboot 的人职匹配推荐系统
  • uniapp vue3实现的一款数字动画调节器件,支持长按、单点操作,提供丝滑的增减动画效果
  • Ecode前后端传值
  • 3 年→ 资深开发速通计划 序言
  • AndroidManifest.xml文件的作用
  • VSCode轻松调试运行.Net 8.0 Web API项目
  • 前端TypeScript 面试题及参考答案
  • leetcode 214. 最短回文串
  • 本地部署语言大模型deepseek完整步骤
  • SheetDataMerge合并工作表(excel)内多行同类数据的小工具。
  • C语言基础之【指针】(上)
  • 快速排序与归并排序模板
  • 微信小程序换行符真机不生效问题