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

day 30

模块和库的导入

导入官方库

标准导入:导入整个库

直接使用`import`语句

# 方式1:导入整个模块
import mathprint("方式1:使用 import math")
print(f"圆周率π的值:{math.pi}")
print(f"2的平方根:{math.sqrt(2)}\n")

从库中导入特定项

当使用from语法从库中导入特定的函数或类时,这些函数或类就可以在您的代码中直接使用,不需要添加模块名作为前缀。因为在导入时没有包括模块的完整路径,前面也不能加上库名。

# 方式2:导入特定的函数或变量
from math import pi, sqrtprint("方式2:使用 from math import pi, sqrt")
print(f"圆周率π的值:{pi}")
print(f"2的平方根:{sqrt(2)}\n")

非标准导入:导入整个库

一般不用

如下

●这将导入`math`模块中定义的所有公开函数和变量。

●和上述from同理,直接调用`sin()`、`cos()`等,而无需`math.`前缀。

from math import *print(f"圆周率π的值:{pi}")
print(f"2的平方根:{sqrt(2)}")

导入自定义库/模块

模块(Module)

本质:以 `.py` 结尾的单个文件,包含Python代码(函数、类、变量等)。

作用:将代码拆分到不同文件中,避免代码冗余,方便复用和维护。

包(Package)

在python里,包就是库

本质:有层次的文件目录结构(即文件夹),用于组织多个模块和子包。

核心特征:包的根目录下必须包含一个 `__init__.py` 文件(可以为空),用于标识该目录是一个包。

若编写一个计算圆面积的代码并保存为 `circle.py`,这个文件就是一个模块。

使用时通过 `import circle` 导入模块,调用其中的函数(如 `circle.calculate_area(5)`)。

# circle.py
import mathdef calculate_area(radius):return math.pi * radius ** 2

项目根目录/

├── circle2.py

└── utils/

    ├── __init__.py   (必需添加,将 model 目录标记为一个可导入的包)

    └── circle.py

└── model/

    └── main.py

应该用python -m model.main来运行,原因:

若直接使用 python model/main.py 运行,Python 解释器会把 model 目录当作当前工作目录,这可能致使 utils 包无法被正确导入,从而引发导入错误。

而使用 python -m model.main 运行时,Python 会将当前目录(项目根目录)添加到 sys.path 的开头。 sys.path 是 Python 解释器用于查找模块的路径列表,这样一来,Python 就能从项目根目录开始查找模块,进而正确导入 utils 包中的 circle.py 文件。

@浙大疏锦行

相关文章:

  • 开发指南116-font-size: 0的使用
  • Linux-进程信号
  • 存储系统03——数据缓冲evBuffer
  • ebpf程序入门编写
  • frida 配置
  • OCframework编译Swift
  • 【C++]string模拟实现
  • C++编程this指针练习
  • 【科研项目】大三保研人科研经历提升
  • Python元组全面解析:从入门到精通
  • 【基础】Windows开发设置入门8:Windows 子系统 (WSL)操作入门
  • 深入解析Java四大引用类型:从强引用到虚引用的内存管理艺术
  • 软件设计师E-R模型考点分析——求三连
  • STM32实战指南:DHT11温湿度传感器驱动开发与避坑指南
  • 关于ECMAScript的相关知识点!
  • 认识常规贴片电阻
  • 数学实验(方程和微分方程求解)
  • 11.4/Q1,GBD数据库最新文章解读
  • 第二十一次博客打卡
  • Prompt、Agent、MCP关系
  • 英国研究:近七成年轻人认为上网有害心理健康
  • 长沙至赣州高铁初步设计获批,可填补湘赣两省斜向交通空白
  • 首届巴塞尔艺术奖公布:大卫·哈蒙斯、曹斐等36人获奖
  • 今晚油价下调,加满一箱油将省9元
  • 以色列媒体:以总理称将接管整个加沙
  • 美俄亥俄州北部发生火车撞人事故,致2人死亡、至少1人失踪