假设我在运行时手头有一个字典,是否有一种简单的方法来创建定义dict的代码。例如,它应该输出字符串
"d = {'string_attr1' : 'value1', 'bool_attr1': True}"
当然可以手动编写转换器函数,它迭代键值对并将字符串放在一起。仍然需要处理特殊情况以决定是否必须引用值等等。
更一般地说:是否有内置方式或库来从运行时数据结构生成变量声明?
上下文:我想使用一个dicts列表作为代码生成器的输入。将从SQL数据库中查询dicts的内容。我不想将代码生成紧密地耦合到查询SQL数据库,所以我认为生成定义字典列表的python源文件会很方便,可以用作字典列表的输入。代码生成器。
答案 0 :(得分:3)
>>> help(repr)
Help on built-in function repr in module __builtin__:
repr(...)
repr(object) -> string
Return the canonical string representation of the object.
For most object types, eval(repr(object)) == object.