python学习笔记——模块和包

  1. 模块 (模块的导入一般在模块开头位置)

(1) 模块的导入

  1. import导入整个模块(模块中的所有功能都能用)
  1. from 模块名 import 功能名 模块中导入一个具体功能
  1. from 模块名 from * (与import 模块名不同的就是前者使用要加模块名. 后者直接用)
  1. as 别名 (给模块或模块中的功能起别名)

注意:不同模块的import在同一个文件中,若两个不同模块有同名功能函数,当使用该函数时,会使用最后一个模块所定义的功能函数,前一个被覆盖掉

(2) main变量 (其他函数在调用某个模块时,写在main变量下的函数不会被执行)

(3) all变量

在all变量中设置功能a但未设置功能b时,其他代码文件通过from a from *调用时,只能使用all变量设置的功能a

对一个文件夹而言,有__init.py__文件,此文件夹即为一个python的包,没有则此文件夹为普通文件夹,python的包中存储相关联的多个模块

(1) 导入包

  1. 方法一
  1. 方法二
  1. 方法三
  1. 使用__all__针对from my_package import *

(1)

(2) 只能使用all中存入的模块,其他模块会报错

相关推荐
呱呱复呱呱2 小时前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽7 小时前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码7 小时前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
兵慌码乱17 小时前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵18 小时前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
FreakStudio1 天前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
用户0332126663671 天前
使用 Python 从零创建 Word 文档
python
Csvn1 天前
Python 两大经典坑点 —— 可变默认参数 & 闭包延迟绑定
后端·python
曲幽1 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
用户556918817531 天前
#从脚本到独立程序:Python + Playwright 批量抓取的完整踩坑记录
python·自动化运维