python 模块及引用

Posted 云淡#风清

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 模块及引用相关的知识,希望对你有一定的参考价值。

在Python中,模块是一种组织代码的方式。它允许我们将相关的函数、类和变量放在一个文件中,并通过导入该文件来使用其中的代码。Python自带了很多常用的模块,同时我们也可以编写自己的模块。

要调用一个模块,我们需要使用 import 语句。例如,如果我们想使用Python标准库中的 math 模块,可以像这样导入:

import math

print(math.pi)
# Output: 3.141592653589793

在这个例子中,我们首先导入了名为 math 的模块。该模块包含了许多数学函数和常量。我们可以通过 math.pi 来访问圆周率π的值,并将其打印到控制台上。

除了导入整个模块之外,我们还可以选择性地导入模块中的特定功能。例如,如果我们只需要使用 sqrt() 函数来计算平方根,我们可以像这样导入:

from math import sqrt

print(sqrt(4))
# Output: 2.0

在这个例子中,我们从 math 模块中导入了 sqrt() 函数,并直接使用它来计算 4 的平方根。

最后,还有一种导入模块的方式是使用别名(alias)。这对于避免名称冲突非常有用。例如,如果我们想将 numpy 模块导入并使用别名 np,可以像这样:

import numpy as np

a = np.array([1, 2, 3])
print(a)
# Output: [1 2 3]

在这个例子中,我们导入了 numpy 模块,并将其起一个别名为 np。这样做可以让我们更方便地使用该模块中的函数和变量,而不必每次都输入完整的名称。

除了Python标准库中的模块,我们还可以自己编写模块来组织和重用代码。下面是一个简单的示例,展示如何创建和使用自定义模块:

假设我们有一个名为 my_module.py 的文件,其中包含以下代码:

def greeting(name):
    print(f"Hello, name!")

def multiply(x, y):
    return x * y

然后,我们可以在另一个Python脚本中导入该模块并使用其中的函数:

import my_module

my_module.greeting("Alice")
# Output: "Hello, Alice!"

result = my_module.multiply(3, 4)
print(result)
# Output: 12

在这个例子中,我们首先使用 import 语句导入了名为 my_module 的模块,该模块位于与当前脚本相同的目录中。我们调用了 my_module.greeting() 函数来输出一条问候语,并使用 my_module.multiply() 函数计算两个数字的乘积。

另外,还可以使用 from ... import ... 语法来导入模块中的特定函数或变量,类似于前面提到的从模块中导入特定功能的方法。例如,我们可以像这样导入 greeting() 函数:

from my_module import greeting

greeting("Bob")
# Output: "Hello, Bob!"

在这个例子中,我们只从 my_module 模块中导入了 greeting() 函数,而不是整个模块。我们已经可以直接使用该函数来输出问候语。

python-第三方库的理解及某个函数的源代码

第三方库,是一个总称,里面有各个模块,而具体使用的函数是模块里的。
库包含多个模块, 每个模块里包含多个函数。
import AAAA     就是引用AAAA这个库,这个库里的模块函数都可以用,只是要在前面加个AAAA.bbbb.function()
在Ipython中,这样用不行会报错,要用哪个模块就只能用下面的.
from AAAA import bbbb     就是引用bbbb这个模块,而bbbb这个模块在AAAA这个库中,可以直接用bbbb.function()
 

用help 查看这个函数,会看到他在哪个module,然后再在相应的moudle.py里面查找。

如查找pyfits.append()这个函数,
import pyfits
help(pyfits.append)
技术分享图片

  然后去这里找

技术分享图片
在里面搜索就找到了
技术分享图片
 

以上是关于python 模块及引用的主要内容,如果未能解决你的问题,请参考以下文章

python中import或from使用及模块和包的使用总结

正则表达式及Python的re模块

python标准库介绍——14 gc 模块详解

python No module named找不到自己写的模块 3种情况及解决方法

python继承关系及DVD案例

Orchard详解--第九篇 拓展模块及引用的处理