gpt4 book ai didi

Python多个类调用特定类时出错

转载 作者:太空宇宙 更新时间:2023-11-03 15:26:06 24 4
gpt4 key购买 nike

我是一名新手,正在学习 Python (3.4) 并尝试上课。

我创建了一个 BootstrapYieldCurve 模块,其中包含两个类(BootstrapYieldCurve 和 ForwardRates)。

导入模块时,我可以调用和操作 BootstrapYieldCurve 类,但调用 ForwardRates 类时出现错误。

有人可以建议代码是否错误,或者我在 Python Shell 中调用类的方式是否错误?

>>> from BootstrapYieldCurve import ForwardRates
>>> Traceback (most recent call last):
File "<pyshell#36>", line 1, in <module>
from BootstrapYieldCurve import ForwardRates
ImportError: cannot import name 'ForwardRates'

这是我的模块代码结构

import math

class BootstrapYieldCurve():
def __init__(self):
def add_instrument(..........):
..........
class ForwardRates():
def .........

最佳答案

您不能像这样从另一个类导入一个类:

from BootstrapYieldCurve import ForwardRates

因为ForwardRates没有封装在BootstrapYieldCurve中(而且Python中也没有这样的概念)。请参阅encapsulation .

您可以从模块(通常包含变量、函数和类的Python 文件)导入变量、函数和类

你可以这样做:

from module_file import BootstrapYieldCurve 

from module_file import ForwardRates

可以引用这个basic tutorial on importing modules .

此外,尽量不要使用相同的名称来命名模块,因为这可能会造成困惑。这样做不是一个好习惯,因为模块名称与其他所有内容共享相同的命名空间。

关于Python多个类调用特定类时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43138865/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com