071_自定义模块_引入模块_import_diy
071_自定义模块_引入模块_import_diy0 播放 · 0 赞同视频
导入import 回忆上次内容
-
模块 就是 封装好功能 的 部件
-
如 wifi模块
-
导入 __hello__ module模块
-
可以 输出hello world!
-
看起来很简单
添加图片注释,不超过 140 字(可选)
-
我想要做个 自己的模块
-
能行吗??🤔
新建文件 my_file
-
尝试 编辑
-
my file.py
-
注意
-
my file 之间 是 空格
vi my file.py
-
运行结果
-
打开了一个my
添加图片注释,不超过 140 字(可选)
-
为什么会这样?
继续观察
-
:ls
-
底行命令ls
-
显示文件缓冲列表
添加图片注释,不超过 140 字(可选)
-
可以看到打开了两个文件
-
my
-
file.py
-
空格 成了
-
切开 文件名的利刃
-
这 怎么办 呢?
退回到shell
添加图片注释,不超过 140 字(可选)
-
:q!
-
先强制 退回到 shell
下划线的 作用
-
下划线 可以代替 空格
-
而且 能用在 文件名中
-
python模块名 需要使用 蛇形命名法
-
编辑 my_file.py
vi my_file.py
-
先试着引入__hello__
-
注意hello两端各有两个下划线
添加图片注释,不超过 140 字(可选)
-
然后保存并运行
添加图片注释,不超过 140 字(可选)
-
确实在my_file.py中
-
引入了__hello__模块
-
想要再把 time中的asctime
-
导入 my_file
my_file.py import __hello__ import time print(time.asctime())
-
保存并运行
添加图片注释,不超过 140 字(可选)
-
my_file.py如上图所示
-
通过引入time包
-
就可以得到当前时间了
添加图片注释,不超过 140 字(可选)
-
这my_file.py
-
也可以作为
-
自定义模块 被引入吗?
游乐场实战
-
自定义模块 my_file
-
可以 被导入
添加图片注释,不超过 140 字(可选)
-
my_file中有什么呢?
dir(my_file)
-
my_file 中包括
-
__hello__
-
time
添加图片注释,不超过 140 字(可选)
-
my_file 可以
-
作为 模块
-
被导入到 另一个 py文件 吗?
编辑oeasy.py
-
退出游乐场
-
回到vim
-
再次编辑 my_file.py
添加图片注释,不超过 140 字(可选)
-
键入:e oeasy.py
-
e 指的是 edit 编辑
-
编辑一个oeasy.py
添加图片注释,不超过 140 字(可选)
-
在vim中
-
新建了 oeasy.py 的
-
缓存(buffer)
缓存列表
-
:ls
-
列出 所有打开的
-
缓存(buffer)
添加图片注释,不超过 140 字(可选)
-
如何 在缓存列表 中
-
切换 当前buffer 呢?
切换 缓存
-
:b1
-
buffer1
-
切换到 1号缓存文件
-
my_file.py
-
:b2
-
buffer2
-
切换到 2号缓存文件
-
oeasy.py
添加图片注释,不超过 140 字(可选)
-
这样 就可以 切换
-
当前 编辑的 缓存
-
buffer
引入模块
-
打开 oeasy.py
-
并进行 编辑
-
在oeasy.py中 只有 一句话
-
import my_file
-
导入 my_file模块
添加图片注释,不超过 140 字(可选)
-
保存并运行
运行结果
-
虽然oeasy.py中
-
只有 一句话
-
但是通过 导入my_file模块
-
实现了
-
hello
-
报时
添加图片注释,不超过 140 字(可选)
-
可以在 自己模块 里
-
输出说明 吗?
自定义模块
-
编辑my_file.py
import __hello__ import time print(time.asctime()) print("This is my first module")
-
在自己的模块 my_file中
-
输出了 一句话
添加图片注释,不超过 140 字(可选)
-
导入模块时
-
完成输出
-
oeasy.py中
-
可以使用
-
my_file模块中的 成员 吗?
切换缓存后
添加图片注释,不超过 140 字(可选)
-
切换 缓存
-
来到my_file.py
-
把最后一行
-
修改 为
-
pi = 3.14
添加图片注释,不超过 140 字(可选)
-
可以在oeasy.py中
-
访问到
-
my_file模块 中的
-
pi这个变量 吗?
查看 模块中的变量
-
my_file模块里
-
都有些什么?
import my_file print(dir(my_file))
-
my_file 里面有 导入的
-
模块 __hello__
-
变量 pi
-
模块 time
添加图片注释,不超过 140 字(可选)
-
怎么引入?🤔
尝试 引用模块中的 变量
-
总共两句话
-
1.导入my_file这个模块
-
2.输出my_file模块中 pi这个变量
添加图片注释,不超过 140 字(可选)
-
在oeasy.py中
-
导入my_file模块之后
-
尝试输出my_file.pi
添加图片注释,不超过 140 字(可选)
-
输出成功!
-
可以直接 输出pi 吗?
尝试直接输出pi
-
尝试直接输出pi
添加图片注释,不超过 140 字(可选)
-
尝试失败
添加图片注释,不超过 140 字(可选)
-
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
添加图片注释,不超过 140 字(可选)
-
如果 就想 直接用pi
-
又应该怎么办呢???🤔