简单的嵌套循环?

Simple Nested loop?

关于嵌套循环的简单问题。

stocks = {'GE': 6.28, 'XOM': 39.8}
for quote in stocks.values():
    print(quote)

    for symbol in stocks.keys():
        print(symbol)

        print('You have purchased', symbol, 'for', quote)

输出:

GE
You have purchased GE for 39.8
XOM
You have purchased XOM for 39.8

为什么说 GE 是在 39.8 而不是 6.28 购买的? 我试图缩进和缩进循环代码,但没有成功。请帮忙?

如果您尝试打印字典的键和值,则只需在一个 for 循环中将两者解包即可:

for symbol, quote in stocks.items():
    print(symbol)
    print('You have purchased', symbol, 'for', quote)

字典没有(通常)排序。

您需要按照遍历顺序打印:

for k, v in stocks.items():
    print(k)
    print('You have purchased', k, 'for', v)

这是 python 中字典的推荐迭代。

stocks = {'GE': 6.28, 'XOM': 39.8}
for key,value in stocks.items():
  print('You have purchased', key, 'for', value)