show | version | enable_checker |
---|---|---|
step |
1.0 |
true |
-
模块 就是 封装好功能 的 部件
- 如 wifi模块
-
导入
__hello__
module模块- 可以 输出
hello world!
- 看起来很简单
- 可以 输出
- 我想要做个
自己的
模块- 能行吗??🤔
- 尝试 编辑
- my file.py
- 注意
- my file 之间 是 空格
vi my file.py
- 运行结果
- 打开了一个my
- 为什么会这样?
- :ls
- 底行命令ls
- 显示文件缓冲列表
- 可以看到打开了两个文件
- my
- file.py
- 空格 成了
- 切开 文件名的利刃
- 这 怎么办 呢?
- :q!
- 先强制 退回到 shell
- 下划线 可以代替 空格
- 而且
能
用在 文件名中 - python模块名 需要使用 蛇形命名法
- 而且
- 编辑 my_file.py
vi my_file.py
- 先试着引入
__hello__
- 注意hello两端各有两个下划线
- 然后保存并运行
- 确实在my_file.py中
- 引入了
__hello__
模块
- 引入了
- 想要再把 time中的asctime
- 导入 my_file
import __hello__
import time
print(time.asctime())
- 保存并运行
- my_file.py如上图所示
- 通过引入time包
- 就可以得到当前时间了
- 这my_file.py
- 也可以作为
- 自定义模块
被
引入吗?
- 自定义模块 my_file
- 可以 被导入
- my_file中有什么呢?
dir(my_file)
- my_file 中包括
__hello__
- time
- my_file 可以
- 作为 模块
- 被导入到 另一个 py文件 吗?
- 退出游乐场
- 回到vim
- 再次编辑 my_file.py
- 键入
:e oeasy.py
- e 指的是 edit 编辑
- 编辑一个oeasy.py
- 在vim中
- 新建了 oeasy.py 的
- 缓存(buffer)
- :ls
- 列出 所有打开的
- 缓存(buffer)
- 如何 在缓存列表 中
- 切换 当前buffer 呢?
- :b1
- buffer1
- 切换到 1号缓存文件
- my_file.py
- :b2
- buffer2
- 切换到 2号缓存文件
- oeasy.py
- 这样 就可以 切换
- 当前 编辑的 缓存
- buffer
-
打开 oeasy.py
- 并进行 编辑
-
在oeasy.py中 只有 一句话
- import my_file
- 导入 my_file模块
- 保存并运行
-
虽然oeasy.py中
- 只有 一句话
-
但是通过 导入my_file模块
- 实现了
- hello
- 报时
- 实现了
- 可以在 自己模块 里
- 输出说明 吗?
- 编辑my_file.py
import __hello__
import time
print(time.asctime())
print("This is my first module")
- 在自己的模块 my_file中
- 输出了 一句话
-
导入模块时
- 完成输出
-
oeasy.py中
- 可以使用
- my_file模块中的 成员 吗?
- 切换 缓存
- 来到my_file.py
- 把最后一行
- 修改 为
- pi = 3.14
- 可以在oeasy.py中
- 访问到
- my_file模块 中的
- pi这个变量 吗?
- my_file模块里
- 都有些什么?
import my_file
print(dir(my_file))
- my_file 里面有 导入的
- 模块
__hello__
- 变量 pi
- 模块 time
- 模块
- 怎么引入?🤔
- 总共两句话
- 1.导入my_file这个模块
- 2.输出my_file模块中 pi这个变量
- 在oeasy.py中
- 导入my_file模块之后
- 尝试输出my_file.pi
- 输出成功!
- 可以直接 输出pi 吗?
- 尝试直接输出pi
- 尝试失败
- pi 是模块中的变量
- 想用 就必须带上模块的名字
- my_file.pi
- 中间
.
的意思是的
- my_file 模块中的 pi属性
- 想用 就必须带上模块的名字
- 就像
- 访问 time模块中的
- asctime函数
- time.asctime()
import time
print(time.asctime)
- 名字空间 就是
- 模块的名字
- 成员的所有者
- 直接找pi找不到
- 带着名字空间
- my_file.file
- 就可以找到了
- 带着名字空间
- 这次导入了系统模块
__hello__
time
- 自己 定义了 模块
- my_file
- 导入 my_file.py
- 作为 自定义的
- my_file模块
- 可以使用
- my_file.pi
- my_file模块中的变量pi
- 但不能直接 用pi
- 如果
就
想 直接用pi- 又应该怎么办呢???🤔
- 下次再说 👋