Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Instance()在Python中做什么?_Python_Python 2.7_Python 3.x - Fatal编程技术网

Instance()在Python中做什么?

Instance()在Python中做什么?,python,python-2.7,python-3.x,Python,Python 2.7,Python 3.x,这一行在python中做什么 user_magics = Instance('IPython.core.magics.UserMagics', allow_none=True) 请注意,UserMagics是在IPython.core.magics.\uuuu init\uuuu.py中定义的空类,如下所示: @magics_class class UserMagics(Magics): """Placeholder for user-defined magics to be adde

这一行在python中做什么

user_magics = Instance('IPython.core.magics.UserMagics', allow_none=True)
请注意,
UserMagics
是在
IPython.core.magics.\uuuu init\uuuu.py
中定义的空类,如下所示:

@magics_class
class UserMagics(Magics):
    """Placeholder for user-defined magics to be added at runtime.
上述定义与此定义有何区别

user_magics = UserMagics()

注意,正如Blender在下面指出的,这是trailets包的一部分,而不是基本Python。

实例
是脚本的一部分。从文件中:

简而言之,traitlets允许用户定义具有

  • 具有类型检查和动态计算默认值的属性(特征)
  • 当属性被修改时,特征会发出更改事件
  • Traitlets执行一些验证,并允许强制分配新的特征值。它们还允许用户定义自定义 基于其他属性值的属性验证逻辑 属性
  • 下面是一个软件包的示例,特别是使用
    实例

    from traitlets import HasTraits, Int, Instance
    
    class Foo(object):
        pass
    
    class MyObject(HasTraits):
        num = Int()
        foo = Instance(Foo, allow_none=True)
    
    if __name__ == '__main__':
        # works
        a = MyObject()
        a.num = 10
        a.foo = Foo()
    
        # works
        b = MyObject()
        b.num = 5
        b.foo = None
    
        # breaks
        c = MyObject()
        c.num = -1
        c.foo = object()  # The 'foo' trait of a MyObject instance must be a Foo or None, but a value of type 'object' was specified.
    

    实例
    是。从文件中:

    简而言之,traitlets允许用户定义具有

  • 具有类型检查和动态计算默认值的属性(特征)
  • 当属性被修改时,特征会发出更改事件
  • Traitlets执行一些验证,并允许强制分配新的特征值。它们还允许用户定义自定义 基于其他属性值的属性验证逻辑 属性
  • 下面是一个软件包的示例,特别是使用
    实例

    from traitlets import HasTraits, Int, Instance
    
    class Foo(object):
        pass
    
    class MyObject(HasTraits):
        num = Int()
        foo = Instance(Foo, allow_none=True)
    
    if __name__ == '__main__':
        # works
        a = MyObject()
        a.num = 10
        a.foo = Foo()
    
        # works
        b = MyObject()
        b.num = 5
        b.foo = None
    
        # breaks
        c = MyObject()
        c.num = -1
        c.foo = object()  # The 'foo' trait of a MyObject instance must be a Foo or None, but a value of type 'object' was specified.
    

    Instance
    不是Python的一部分。它记录在
    traitlets
    包中:
    Instance
    不是Python的一部分。它记录在
    traitlets
    包中:正是我要找的,谢谢Blender!更新了问题的标签,包括叛徒。正是我要找的,谢谢Blender!已更新问题的标记,以包括叛徒。