• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

详解Python模块化–模块(Modules)和包(Packages)

python 搞代码 4年前 (2022-01-09) 19次浏览 已收录 0个评论
文章目录[隐藏]

引言

在刚入门python时,模块化编程、模块、类库等术语常常并不容易理清。尤其是Modules(模块)和Packages(包),在import引用时很容易混淆出错。

实际上,Python中的函数(Function)、类(Class)、模块(Module)、包库(Package),都是为了实现模块化引用,让程序的组织更清晰有条理。

  • 通常,函数、变量、类存储在被称为模块(Module)的.py文件中,一组模块文件又组成了包(Package)。
  • 将函数、变量、类存储在存储在独立的.py文件中,可隐藏代码实现的细节,将不同代码块重新组织,与主程序分离,简化主程序的逻辑,提高主程序的可读性。
  • 有了包和模块文件,可以在其他不同程序中进行复用,还可以使用其他人开发的第三方依赖库。

Python Modules模块

Modules2模块是包含 Python 定义和语句的文件。以.py为后缀的文件名就是模块名称。

在模块内,模块的名称可以用全局变量 __name__表示(字符串)。

举个例子,我们创建了一个fibo.py文件,文件内容为:

# Fibonacci numbers module
def fib(n):    # write Fibonacci series up to n
    a, b = 0, 1
    while a < n:
        print(a, end=' ')
        a, b = b, a+b
    print()
def fib2(n):   # return Fibonacci series up to n
    result = []
    a, b = 0, 1
    while a < n:
        result.append(a)
        a, b = b, a+b
    return result

这里fibo.py就是一个模块,fib、fib2是fibo模块中的函数。

导入模块

如果我们想要在其他程序中使用fibo模块,可以有以下三种方式导入:

①导入整个模块

#import module_name
import fibo

可使用下面的语法来使用其中任何一个函数:

#module_name.func()
fibo.fib(10)

⭕ 注意:这里模块名+句点不可省略。

②导入模块中的特定函数

#from module_name import function_name
from fibo import fib, fib2
fib(10)

若使用这种语法,调用函数时就无需使用模块名+句点。

因为在import语句中已经显式地导入了函数fib和fib2,因此调用它时只需指定其名称。

③导入模块中的所有函数

#from module_nam<em style="color:transparent">本文来源[email protected]搞@^&代*@码网(</em>e import *
from fibo import *
fib(20)

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:详解Python模块化–模块(Modules)和包(Packages)

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址