对python来说、一个模块就是一个文件-python导入自定义模块和包

参考资料

https://blog.csdn.net/gvfdbdf/article/details/52084144

http://www.runoob.com/python/python-modules.html

python基本概念

python模块

Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。

模块让你能够有逻辑地组织你的 Python 代码段。

把相关的代码分配到一个模块里能让你的代码更好用,更易懂。

模块能定义函数,类和变量,模块里也能包含可执行的代码。

python包

包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的 Python 的应用环境。

简单来说,包就是文件夹,但该文件夹下必须存在 __init__.py 文件, 该文件的内容可以为空。__init__.py 用于标识当前文件夹是一个包。

场景应用

导入同级目录文件

如果需要引入同级目录下的文件,则可以采用import一个模块的形式,即可调用。

考虑同一目录下的两个python文件,test.py 需要调用support.py 中的函数,目录结构如下:

|-- test.py

|-- support.py

support.py 中的代码如下:

defprint_func( par ):print "Hello :", parreturn

test.py 调用的代码如下:

#!/usr/bin/python#-*- coding: UTF-8 -*-

#导入模块

importsupport#现在可以调用模块里包含的函数了

support.print_func("Runoob")

导入子目录文件

如果需要引入子目录下的文件,则可以采用import一个包的形式,将子目录封装成包,即可调用。

考虑一个在 package_runoob 目录下的 runoob1.py、runoob2.py、__init__.py文件,test.py 为测试调用包的代码,目录结构如下:

test.py

package_runoob

|-- __init__.py

|-- runoob1.py

|-- runoob2.py

__init__.py可以是空文件。

test.py 调用代码如下:

#!/usr/bin/python#-*- coding: UTF-8 -*-

#导入 Phone 包

from package_runoob.runoob1 importrunoob1from package_runoob.runoob2 importrunoob2

runoob1()

runoob2()

也可以采用:

#!/usr/bin/python#-*- coding: UTF-8 -*-

#导入 Phone 包

importpackage_runoob.runoob1importpackage_runoob.runoob2

package_runoob.runoob1.runoob1()

package_runoob.runoob2.runoob2()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值