Python 模块:创建、导入和使用

什么是模块?

将模块视为代码库。模块是一个包含一组函数的文件,您想要在应用程序中包含这些函数。

创建一个模块

要创建一个模块,只需将要包含在其中的代码保存在扩展名为 .py 的文件中:

示例:将以下代码保存在名为 mymodule.py 的文件中:

python 复制代码
def greeting(name):
  print("Hello, " + name)

使用模块

现在,我们可以使用刚刚创建的模块,通过使用 import 语句:

示例:导入名为 mymodule 的模块,并调用 greeting 函数:

python 复制代码
import mymodule

mymodule.greeting("Jonathan")

注意:当使用模块中的函数时,请使用以下语法:模块名.函数名

模块中的变量

模块可以包含各种类型的变量(数组、字典、对象等),如前所述,除了函数:

示例:将以下代码保存在名为 mymodule.py 的文件中:

python 复制代码
person1 = {
  "name": "John",
  "age": 36,
  "country": "Norway"
}

示例:导入名为 mymodule 的模块,并访问 person1 字典:

python 复制代码
import mymodule

a = mymodule.person1["age"]
print(a)

模块的命名

您可以将模块文件命名为任何您喜欢的名称,但它必须具有扩展名 .py。

重命名模块

您可以在导入模块时使用 as 关键字创建别名:

示例:为 mymodule 创建一个别名 mx:

python 复制代码
import mymodule as mx

a = mx.person1["age"]
print(a)

内置模块

Python 中有几个内置模块,您可以随时导入它们。

示例:导入并使用 platform 模块:

python 复制代码
import platform

x = platform.system()
print(x)

使用 dir() 函数

有一个内置函数可用于列出模块中的所有函数名称(或变量名称)。这个函数是 dir() 函数:

示例:列出属于 platform 模块的所有已定义名称:

python 复制代码
import platform

x = dir(platform)
print(x)

注意:dir() 函数可用于所有模块,包括您自己创建的模块。

从模块中导入

您可以使用 from 关键字选择只导入模块的部分。

示例:模块名为 mymodule,其中包含一个函数和一个字典:

python 复制代码
def greeting(name):
  print("Hello, " + name)

person1 = {
  "name": "John",
  "age": 36,
  "country": "Norway"
}

示例:只从模块中导入 person1 字典:

python 复制代码
from mymodule import person1

print(person1["age"])

最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。

看完如果觉得有帮助,欢迎点赞、收藏关注

相关推荐
程序员爱钓鱼8 小时前
GOPATH 与 Go Modules:Go 项目依赖管理的演变
后端·go
STLearner9 小时前
ICML 2026 | LLM×Graph论文总结[2]【Graph4LLM,Graph4Agent,智能体记忆(Memory)
大数据·人工智能·python·深度学习·学习·机器学习·数据挖掘
牛奔16 小时前
Go 如何打印调试深层或嵌套的结构体
开发语言·后端·golang
红烧大青虫16 小时前
HarmonyOS应用开发实战:小事记 - 数据迁移策略:RDB 表结构变更的版本号管理与 onUpgrade 回调
后端·华为·harmonyos·鸿蒙系统
geovindu17 小时前
go: Iterative Algorithms
开发语言·后端·算法·golang·迭代算法
郭老二18 小时前
【Python】基本语法:装饰器语法糖@
python
阳光是sunny18 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
前端工作日常18 小时前
我学习到的Java中domain和dto区别
java·后端
kite012118 小时前
Go语言Map深度解析与最佳实践
开发语言·后端·golang
阳光是sunny19 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端