动态实例属性

2023-12-05

假设我有一堂课:

class Foo(object):
    def __init__(self,d):
        self.d=d

d={'a':1,'b':2}

inst=Foo(d)

inst.d
Out[315]: {'a': 1, 'b': 2}

有没有办法动态创建 n 个属性,其中每个属性都是一个字典键,所以inst.a会回来1等等。


class Foo(object):
    def __init__(self, attributes):
        self.__dict__.update(attributes)

这样就可以了。

>>>foo = Foo({'a': 42, 'b': 999})
>>>foo.a
42
>>>foo.b
999

您还可以使用setattr内置方法:

class Foo(object):
    def __init__(self, attributes):
        for attr, value in attributes.iteritems():
            setattr(self, attr, value)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态实例属性 的相关文章

随机推荐

  • flowjs:调用方法“join”。无法在混合上调用方法

    假设我有一个恒定的动物 我用它导入 import animals from animals 假设动物常数为 hoofed horses sheep goats feline lions tigers canine dogs wolves 假
  • 如何使用flask-admin编辑模型视图

    如何从flask admin的编辑页面使用generate password hash设置password hash 我在 python shell 中创建用户名和密码 密码经过哈希处理 admin add view MyModelView
  • 如何在文件中存储和检索 Python 本机数据结构?

    我正在读取 XML 文件并将所需数据重新组织为 Python 数据结构 列表 元组等 例如 我的 XML 解析器模块之一会生成以下数据 data miner py animals Chicken Sheep Cattle Horse pop
  • Xamarin.IOS:本地化不起作用

    我有一个 Xamarin IOS 应用程序并尝试本地化一些图像 我以这篇文章作为指导 https developer xamarin com guides ios advanced topics localization and inter
  • WPF:可编辑的组合框会掉落?

    我正在尝试创建一个既可编辑又可下拉而不是下拉的组合框 按向上箭头键 默认为向下键 时也应打开菜单 我尝试修改 ComboBox 的默认 ControlTemplate 但它似乎不支持 IsEditable 默认ControlTemplate
  • 如何用SAX正确解析XML?

    我正在从 REST 服务接收 XML 文档 该文档应使用 SAX 进行解析 请参阅以下由 XSD 生成的示例 设置解析器不是问题 我的主要问题是实际处理startElement endElement 我不明白如何提取我需要的项目并存储它们
  • 套接字:有时(很少)数据包在接收过程中丢失

    我在用着Socket从 udp 多播接收数据 代码很简单 s new Socket AddressFamily InterNetwork SocketType Dgram ProtocolType Udp while true int co
  • 使用 Firebase Simple Login 保护路由

    我正在尝试在使用 Firebase Simple Login 的 Ember 应用程序中实现以下事件序列ember cli 在允许进入任何路由之前检查用户是否经过身份验证 All路由需要经过身份验证 如果用户未通过身份验证 则重定向到Log
  • 使用 Twitter API 版本 1.1 检索 user_timeline 的最简单 Java 示例

    我正在寻找一个使用 Twitter 1 1 API 的简单 Java 示例 但没有找到 使用此处发布的 PHP 示例 使用 Twitter API 版本 1 1 检索 user timeline 的最简单 PHP 示例和其他一些 Stack
  • 根据一列的值合并数据

    我在 R 中有一个数据框 year group sales 1 2000 1 20 2 2001 1 25 3 2002 1 23 4 2003 1 30 5 2001 2 50 6 2002 2 55 我想按组对数据进行分组或创建某种对象
  • 如何使用 html5 重置视频

    我对网络编程有点陌生 我正在尝试弄清楚如何在第一次播放视频后重置视频 我的代码是 var video document getElementById home video video addEventListener click funct
  • 使用 mp3 元数据或 HTML 在 iPhone 锁定屏幕上显示插图和曲目名称

    当您在使用 safari chrome 等后锁定 iPhone 时 当播放 mp3 文件时 它会显示空白的插图和指向 mp3 文件位置的硬链接 看起来相当难看 我可以包含一些替代标签 元数据来显示艺术作品和曲目标题吗 您可以通过设置添加一个
  • 我应该如何处理 APP_KEY 和 APP_SECRET (Dropbox API)

    我使用 Dropbox API 编写了一段简单的代码 这意味着使用我的应用程序的 APP KEY 和 APP SECRET 假设有人也想使用我的应用程序 我创建了一个 github 存储库 推送代码等等 但是 当然 我不放置 APP KEY
  • 将数据从固定长度文件读取到类对象中

    我有一个固定长度的文件 想将其数据读入类对象中 这些对象将进一步用于在数据库中插入 更新数据 虽然可以使用 StreamReader 来完成 但我正在寻找更复杂的解决方案 FileHelper 是另一种解决方案 但我不想在我的程序中使用开源
  • Delphi中'Result'的默认值是多少?

    是否有任何保证的默认值Result函数的变量 如 0 或 nil 或者应该Result使用前总是要初始化吗 我有一个函数返回这样的字符串 function Foo String begin while do Result Result bo
  • 有没有一种简单的方法将MySQL数据转换为标题大小写?

    我有一个 MySQL 表 其中一列中的所有数据均以大写形式输入 但我需要转换为标题大小写 并识别类似于大胆的火球标题案例脚本 I found 这个优秀的解决方案用于将字符串转换为小写 但 Title Case 函数似乎已被排除在我的 MyS
  • 从另一个 ViewController 调用函数

    我有两个 ViewController FirstViewController and SecondViewController 两者都有自己的 Swift 文件 FirstViewController swift and SecondVi
  • android 中的自定义进度对话框?

    我按照以下步骤操作自定义对话框示例在文档中 但我得到了这个例外 有任何想法吗 04 03 18 50 28 787 VERBOSE Bru Press Tab 750 Exception in Tabsjava lang RuntimeEx
  • FSI.exe 在 Ubuntu 10.10 下不起作用

    更新 尝试过 11 月 CTP 版本 同样的错误消息 忘了说这个服务器安装了 Ubuntu 服务器版本 我在运行 Desktop 10 10 的 Ubuntu 桌面上没有遇到此问题 所以我怀疑可能是缺少一些命令行相关的库 安装 librea
  • 动态实例属性

    假设我有一堂课 class Foo object def init self d self d d d a 1 b 2 inst Foo d inst d Out 315 a 1 b 2 有没有办法动态创建 n 个属性 其中每个属性都是一个