for 语句(循环计算优先级)*不确定这是否是正确的术语


prices = {
    "banana": 4,
    "apple": 2,
    "orange": 1.5,
    "pear": 3
} 
stock = {
    "banana": 6,
    "apple": 0,
    "orange": 32,
    "pear": 15
}
total = 0 
for item in prices:
    a=prices[item]*stock[item]
    total=total+a
    print total 

所以这是我的代码,我故意在 for 语句中编写了打印总数,所以它为我打印出了计算顺序,数字是这样的 48.093.0 117.0 117.0,所以在基本计算之后,语句产生的第一个值是橙子的总和,第二个是梨的总和,第三个是香蕉,最后一个是苹果

现在我很好奇这种计算的优先顺序是根据什么原则进行的,因为在我看来,它从dic_stock中最大的数字开始并以降序方式计算,我知道这只是一个肤浅的观察,一定是计算机这样做的原因

谁能告诉我为什么:)

字典

不排序。因此,获取键值对的顺序不是固定的。如果您需要在词典上定义广告顺序,则需要使用集合。OrderedDict

相关内容

最新更新