通过';连接3个词典的Python方式';并对它们中的每一个调用json_转储
我有以下代码:通过';连接3个词典的Python方式';并对它们中的每一个调用json_转储,python,dictionary,Python,Dictionary,我有以下代码: for dict in container: translated += json.dumps(dict) + "," translated = translated.rstrip(',') 我在寻找一种类似蟒蛇的方法。 谢谢 使用: 除了生成器表达式,您还可以使用: 使用: 除了生成器表达式,您还可以使用: 如果容器可以作为列表(适用于列表/元组),则另一种方法是: 如果container是一个任意iterable,则可以执行以下操作: translated
for dict in container:
translated += json.dumps(dict) + ","
translated = translated.rstrip(',')
我在寻找一种类似蟒蛇的方法。
谢谢 使用:
除了生成器表达式,您还可以使用:
使用:
除了生成器表达式,您还可以使用:
如果
容器
可以作为列表
(适用于列表
/元组
),则另一种方法是:
如果container
是一个任意iterable,则可以执行以下操作:
translated = json.dumps(list(container), separators=(',', ': ')).strip('[]')
或者只是使用它,这并不是对JSON格式灵活性的滥用。如果
容器
可以将JSON作为列表
(适用于列表
/元组
):
如果container
是一个任意iterable,则可以执行以下操作:
translated = json.dumps(list(container), separators=(',', ': ')).strip('[]')
或者只是使用它,这并不是对JSON格式灵活性的滥用。更简洁、更快的小调整(不值得自己回答):
,”。join(map(JSON.dumps,container))
@ShadowRanger这是一个实际的场合,map
确实有意义:)thx,adddyar。我的经验法则是使用map
,如果已经有一个单参数函数可以完全满足您的需要;如果没有,请坚持使用listcmp/genexpr,它将比基于lambda
的map
@ShadowRanger更快,通常可读性更高。对我来说,相同的规则:)然而,问题中的“Pythonic”总是让我朝着comp/gen方向进一步倾斜,这些都是Python初学者真正应该珍视的语法糖分。更简洁、更快的小调整(不值得自己回答):,”。加入(map(json.dumps,container))
@ShadowRanger这是一个实际的场合,map
确实有意义:)thx,adddyar。我的经验法则是使用map
,如果已经有一个单参数函数可以完全满足您的需要;如果没有,请坚持使用listcmp/genexpr,它将比基于lambda
的map
@ShadowRanger更快,通常可读性更高。对我来说,相同的规则:)然而,问题中的“Pythonic”总是让我朝着comp/gen方向进一步倾斜,因为这些是Python初学者真正应该珍惜的语法糖。注意:使用的精确的分隔符
会影响dict
表示和dict
s之间的分隔,因此这不是100%等价的(内部空格不同)。注意:使用的精确的分隔符
会影响dict
表示和dict
之间的分隔,因此这不是100%等效的(内部空格不同)。
translated = json.dumps(container, separators=(',', ': ')).strip('[]')
translated = json.dumps(list(container), separators=(',', ': ')).strip('[]')