<p><strong>注意:</strong>要添加<code>total</code>,请阅读至结尾</p>
<p>首先,要获取dict中某个值的值,索引如下</p>
<p><code>dict["key"]</code>而不是<code>dict.["key"]</code></p>
<p>其次,要在列表中添加内容,请使用括号而不是方括号。所以,<br/>
<code>.append(x)</code>不是{<cd5>}</p>
<p>修复我们目前拥有的两件事:</p>
<pre><code>dictlist = { "g1" : [], "g2" : [] , "g3" : [] }
a = ["a", 23]
a1 = ["asd", 3]
a2 = ["asdf", 10]
a3 = ["adg", 5]
b1 = ["df", 5]
b2 = ["dfg", 1]
c = ["dfg", 50]
dictlist["g1"].append(a)
dictlist["g1"].append(a1)
dictlist["g1"].append(a2)
dictlist["g1"].append(a3)
dictlist["g2"].append(b1)
dictlist["g2"].append(b2)
dictlist["g3"].append(c)
</code></pre>
<pre><code>#Now, you want to print the key of the dict as the heading, so our first loop will be:
for heading in dict.keys(): # dictlist.keys() returns a list of all the keys
print(heading)
#The next thing you want is to print the values of the respective key seperated by ",":
for value in dict[heading]:
print(*value, sep=",") # we can use the sep keyword to print it as we require
# The at the end, an empty print() to seperate the headings
print()
</code></pre>
<p>输出:</p>
<pre><code>g1
a, 23
asd, 3
asdf, 10
adg, 5
g2
df, 5
dfg, 1
g3
dfg, 50
</code></pre>
<p><strong>现在,对于添加<code>total</code>:</strong></p>
<pre><code>for heading in dict.keys():
print(heading)
total = 0 # We make a variable, becomes zero for every heading
for value in dict[heading]: # value is a list like ["a", 23], has str and int.. So;
total += sum(item for item in value if type(item) == int)
print(*value, sep=",")
#print the total before starting the next heading
print("total," total)
print()
</code></pre>
<p>输出:</p>
<pre><code>g1
a, 23
asd, 3
asdf, 10
adg, 5
total, 41
g2
df, 5
dfg, 1
total, 6
g3
dfg, 50
total, 50
</code></pre>