【发布时间】:2020-11-16 12:36:21
【问题描述】:
我有一个帮助文件,将其命名为 helper.py,具有三个不同的类 SQL,ML 和 AWS。
每个类都包含不同的辅助函数,但并非所有类都需要相同的包,例如 AWS 需要 boto3 模块,但 SQL 不需要。
我试过了
class AWS():
def __init__(self):
import boto3
s3 = boto.client("s3")
def magic():
< do stuff with boto3>
但是当我随后调用 aws = AWS().magic() 时,我得到“boto3 未定义”。
我可以在helper.py 的最顶部包含所有包,但我宁愿不这样做
【问题讨论】:
-
请提供该错误消息的完整堆栈跟踪。如果您在
__init__中使用import boto3,那么它只能在__init__中使用... -
NameError:名称“boto3”未定义。如果不在
__init__中,你如何导入特定类的模块?您是否需要为每个功能都这样做?
标签: python class python-module