【问题标题】:Looping through nested key:value pairs遍历嵌套的键:值对
【发布时间】:2015-08-24 18:58:06
【问题描述】:

我是 python 新手,非常感谢您的帮助。

1) 我有一个数据结构

Table = {'1': {'From': 'A', 'To': 'B'}, '2': {'From': 'C', 'To': 'D'}}

2) 我想遍历Table 并打印与“From”关联的值。

3) 我希望输出为 -> A C

我如何做到这一点?

【问题讨论】:

    标签: python python-2.7 loops python-3.x nested-loops


    【解决方案1】:
    for v in Table.values():
        print v["From"]
    

    【讨论】:

    • 为我工作!谢谢。
    【解决方案2】:
    >>> table = {'1': {'From': 'A', 'To': 'B'}, '2': {'From': 'C', 'To': 'D'}}
    >>> print ' '.join(row['From'] for row in table.values())
    A C
    

    那我在这里做什么?

    • (row['From'] for row in table.values())generator expression。它创建一个生成器(类似于其他语言中的迭代器)。
    • 我们将此生成器发送到 join(),它是 str 类中的一个函数:它接受任何可迭代的事物(列表、元组、生成器...)并创建一个包含所有元素的字符串...
    • ...由我们调用它的字符串分隔(在本例中为单个空格,但可以是任何字符串)。

    当然,@YOBA 的解决方案更容易阅读,但我无法抗拒让您困惑片刻——希望能教给您一些在其他情况下可能有用的概念。祝你好运,玩得开心! :)

    【讨论】:

      猜你喜欢
      • 2014-09-23
      • 2014-01-29
      • 1970-01-01
      • 2022-11-20
      • 2015-11-24
      • 2011-04-10
      • 1970-01-01
      • 2018-05-13
      相关资源
      最近更新 更多