如何从同一模块中的类名字符串获取类对象?

2023-11-25

我有课

class Foo():
    def some_method():
        pass

还有另一个班级在同一个模块中:

class Bar():
    def some_other_method():
        class_name = "Foo"
        # Can I access the class Foo above using the string "Foo"?

我希望能够访问Foo使用字符串“Foo”的类。

如果我在另一个模块中,我可以使用以下方法来执行此操作:

from project import foo_module
foo_class = getattr(foo_module, "Foo")

我可以在同一个模块中做同样的事情吗?

那些家伙在IRC建议我使用映射字典将字符串类名映射到类,但如果有更简单的方法,我不想这样做。


import sys
getattr(sys.modules[__name__], "Foo")

# or 

globals()['Foo']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从同一模块中的类名字符串获取类对象? 的相关文章

随机推荐

  • 生成 svn 中文件的更改历史记录

    是否可以生成一个文件 其中包括对某个文件所做的所有更改的摘要 什么 何时 由谁 VSS 中曾经有这样的选项 我认为它被称为 历史记录 它非常适合回溯并跟踪谁在何时进行了某些更改 顺便说一句 我正在使用 tortoisesvn 先感谢您 右键
  • fpdf 中单元格内的背景颜色没有变化

    我使用 fpdf 为我的报告生成 pdf 文件 对此我还是新手 我想更改单元格内的填充颜色 但每当我重新加载页面时 什么也没有 hapeens 它仍然是相同的白色填充颜色 这是我的代码 我的代码有什么问题吗 我按照设置填充颜色的正确方法进行
  • QQuickWindow透明

    我将 QQmlApplicationEngine 与 QQuickWindow 一起用于应用程序 但我不能 透明的主窗口 我想在应用程序弹出之前设置启动画面 并且我使用 Window 组件 它应该是透明的 但事实并非如此 我的 main c
  • iPhone - 从视频文件中分离音频并将其保存到单独的文件中

    有谁知道是否可以将音频从视频文件 例如 h 264 编码 mpeg 或其他此类格式 中分离出来 然后将该音频数据保存到单独的文件 例如 mp3 文件 中 这涉及到iPhone SDK 任何正确方向的指示将不胜感激 谢谢 听起来像是 AVFo
  • C++ 从 URL 解析主机 IP 地址

    给定 URL 如何解析主机 IP 地址Visual C 我不确定是否有特定的 C 类来执行主机名查找 但您始终可以使用纯 C 来执行此类操作 这是我的版本 可以在 Linux Mac OS X 和 Windows 上编译和运行 includ
  • Android:添加带有展开动画的视图(不闪烁)

    我想使用扩展动画将视图添加到视图组 因此添加的视图一开始非常小 并且占用越来越多的空间 直到达到其完整大小 可能会在此过程中移动其他视图 在尝试了不同的方法之后 我想出了下面的解决方案 如果对您有帮助 请投票 或者请发布更好的替代方案 我确
  • C# 比较两个对象模型中的数据

    我有一个对话框 当生成时 它会填充对象模型中的数据 此时 数据被复制并存储在 备份 对象模型中 当用户完成更改并单击 确定 关闭对话框时 我需要一种快速方法将备份对象模型与实时对象模型进行比较 如果发生任何更改 我可以为用户创建新的撤消状态
  • GCC 不使用 inc

    海湾合作委员会编译器 gcc version gcc GCC 4 8 2 不生成inc汇编指令 它实际上可能有用 例如在这个 C 程序中 int main int argc char argv int sum 0 int i for i 0
  • Spring CrudRepository findByInventoryIds(List inventoryIdList) - 相当于 IN 子句

    在 Spring CrudRepository 中 我们是否支持字段的 IN 子句 即类似于以下内容 findByInventoryIds List
  • 为什么 C# 在实现接口时不允许继承返回类型

    下面的代码在 C 中不合法是否有任何合理的原因 class X IA IB public X test Compliation Error saying that X is not IB return this interface IA I
  • 不带参数的 goBack() 和 pop() 功能相同吗?

    来自阅读文档看起来是这样 但我想我很困惑为什么在不带参数调用 pop 时没有指出它们是可以互换的 或者为什么甚至会有两个具有如此相似行为的不同函数 并且为什么 goBack 不接受要返回的屏幕数量的参数 pop 返回堆栈 区别在于 pop特
  • 如何从命令行定义 gradle 中的 teamcity['build.number'] 属性

    有没有办法从命令行定义 teamcity build number 属性 我尝试了 Pteamcity build number 1 但它不起作用 我有一个 build gradle 文件 其中包含此任务 distTar baseName
  • 如何获取安卓锁屏壁纸?

    我使用下面的代码来检索 Android 8 1 手机上的 Android 锁屏壁纸 WallpaperManager manager WallpaperManager getInstance getActivity ParcelFileDe
  • OnPageChangeListener alpha 交叉淡入淡出

    关于 Android 中的交叉淡入淡出有很多问题 但它们都包含动画 我的问题是关于使用 ViewPager 的 OnPageChangeListener 进行交叉淡入淡出 我有一个 ViewPager 它可以有无限数量的视图 但实际上使用大
  • 我的云运行服务如何调用其他云运行服务?

    我有一个服务正在监听 https myapp a run app dosomething 但我想利用 Cloud Run 的可扩展性功能 因此在 dosomething 的控制器中 我向 https myapp a run app smal
  • 获取给定 System.Type 的结构的大小

    给定一个结构体MyStruct 我可以使用以下方法获取该结构实例的大小sizeof MyStruct 在不安全的代码中 但是 我想获取给定结构的大小Type结构体的对象 即sizeof typeof MyStruct 有Marshal Si
  • MYSQL - 无法连接到“localhost”上的 MYSQL 服务器 (10061)

    我已经在我的电脑上安装了 wamp 服务器 它没有互联网或内联网连接 Windows XP 操作系统 但是当我访问MYSQL时会弹出这个错误 你能告诉我如何解决这个错误吗 非常感谢 无法连接到 localhost 上的 MYSQL 服务器
  • 构建应用程序时 Xcode 错误:第 7 行:/resources-to-copy-Project.txt:权限被拒绝

    当我尝试在 Xcode 中构建 cordova 应用程序时 出现以下错误 Users User PhpstormProjects project project app platforms ios Pods Target Support F
  • 需要归档CLLocation数据

    我有一个数组CLLocation我想要存档的数据 应该NSUserDefaults系统可以用吗 否则 如何最好地归档CLLocation data 要正确存储 CLLocation 而不会丢失信息 请使用 NSKeyedArchiver 如
  • 如何从同一模块中的类名字符串获取类对象?

    我有课 class Foo def some method pass 还有另一个班级在同一个模块中 class Bar def some other method class name Foo Can I access the class