小编JDi*_*JDi的帖子

使用仅在运行时已知的字段名称更新数据类中的字段

我想更新数据类中的字段,但我仅在运行时而不是在开发期间知道字段名称。

#!/usr/bin/env python3.6
# -*- coding: utf-8 -*-

from dataclasses import dataclass # I use the backport to 3.6

@dataclass
class Template:
    number: int = 0
    name: str = "^NAME^"


oneInstance = Template()
print(oneInstance) # Template(number=0, name='^NAME^')
# If I know the variable name during development, I can do this:
oneInstance.number=77
# I get this from a file during runtime:
para = {'name': 'Jones'}
mykey = 'name'
# Therefore, I used exec:
ExpToEval = "oneInstance." + mykey + ' = …
Run Code Online (Sandbox Code Playgroud)

python python-dataclasses

10
推荐指数
2
解决办法
2万
查看次数

标签 统计

python ×1

python-dataclasses ×1