为了账号安全,请及时绑定邮箱和手机立即绑定

我如何迭代带有 dict 的元组

我如何迭代带有 dict 的元组

江户川乱折腾 2022-06-02 12:14:03
我在元组中有一些字典 a = ({'row': 1, 'row_section': None, 'value_1': 'qwe', 'value_2': 'name', 'value_3': ' ', 'no_category': 'qwe', 'value_4': 'test', 'size_measures_multi': [('1', 'cm', 'value'), ('123', 'm', 'value'), ('1233', 'm', 'value')]})例如,我不会从键 nomenclature_platform_id 和元组列表中的每个第一个元素创建元组,这些元素包含在键“size_measures_multi”中('qwe', '1', '123', '1233')('34110', '1','21','28')我尝试在元组中进行列表理解tuple(a['v'], [item[0] for item in row['v']])但我没有预期的结果('qwe', ['1', '123', '1233'])('34110', ['1','21','28'])为什么我的代码工作错误,我该如何解决?我将不胜感激
查看完整描述

1 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

您可以使用生成器表达式、列表推导和元组加法:


a = ({'row_n': 1, 'row_section': None, 'nomenclature_platform_id': 'qwe', 'nomenclature_name': 'name', 'TM': ' ', 'no_category': 'orig_num Номер', 'article': 'num артикля', 'size_measures_multi': [('1', 'cm', 'brutto'), ('123', 'm', 'netto_brutto_unknown'), ('1233', 'm', 'netto_brutto_unknown')]}, {'row_n': 2, 'row_section': None, 'nomenclature_platform_id': '34110', 'nomenclature_name': 'Fuel MAX', 'TM': 'Fuel MAX', 'no_category': 'MAGNETICYW', 'article': 'MAGNETICYW', 'size_measures_multi': [('1', 'm', 'netto_brutto_unknown'), ('21', 'm', 'netto_brutto_unknown'), ('28', 'm', 'netto_brutto_unknown')]})


result = [(row['nomenclature_platform_id'],) + tuple(item[0] for item in row['size_measures_multi']) for row in a]


print(result)

输出:


[('qwe', '1', '123', '1233'), ('34110', '1', '21', '28')]


查看完整回答
反对 回复 2022-06-02
  • 1 回答
  • 0 关注
  • 139 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号