【问题标题】:What does it mean to say creating class at runtime ? and also what does runtime mean in python?在运行时创建类是什么意思?还有运行时在python中意味着什么?
【发布时间】:2020-12-25 11:40:52
【问题描述】:

我正在阅读文档,关于类的 python 教程,我发现这一行非常混乱。 Here

与模块一样,类具有 Python 的动态特性:它们是在运行时创建的,并且可以在创建后进一步修改。

“类参与 Python 的动态特性”是什么意思:它们是在运行时创建的?为什么模块是这样的? 到目前为止,我对类的了解是它们被创建为,

class Democlass():
    pass

我是在运行时创建它吗?谷歌搜索后我发现Here 可以通过下面的代码在运行时创建类,但我不明白为什么它表示为运行时创建而上面的代码不是,两者有什么区别?

cls = type('A', (object,), {'__doc__': 'class created by type'})

print(cls)
print(cls.__doc__)

“python 的动态特性”与其“运行时”之间的联系是什么? 如果有人提供帮助,我将不胜感激。 提前致谢。

【问题讨论】:

  • 这意味着class是Python中的一个可执行语句,不像编译语言中类在执行开始之前驻留在编译代码中。
  • @BoarGules 用于创建类的这两段代码是否相同?我的意思是,他们在做同样的事情吗?
  • 确实可以,但是第二种方法可以让您在运行时确定类名,例如响应用户输入。这是框架作者所做的事情。像我们这样的普通凡人使用class 声明。
  • 谢谢。您能解释一下,运行时是什么意思吗?
  • 运行时是您键入 python.exe mycode.py 的时间。在此之前,这些类不存在。

标签: python class object dynamic runtime


【解决方案1】:

表示它在运行程序时正在创建类,可以在运行程序时更改

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-12
    • 2013-10-26
    • 2020-11-19
    • 2020-01-21
    • 1970-01-01
    • 2013-11-27
    • 2015-01-22
    相关资源
    最近更新 更多