字典

    使用一个字典的可以迭代出其中的内容,比如这样:

    1. >>> for name, age in ages.items():
    2. ... print(name, age)
    3. ...
    4. Peter 10
    5. Isabel 11
    6. Anna 9
    7. Thomas 10
    8. Bob 10
    9. Maria 12
    10. Gabriel 10

    同时你可以将另一个字典作为某个值写入:

    1. students = {
    2. "Peter": {"age": 10, "address": "Lisbon"},
    3. "Isabel": {"age": 11, "address": "Sesimbra"},
    4. "Anna": {"age": 9, "address": "Lisbon"},
    5. }
    6. >>> students['Peter']
    7. >>> students['Peter']['address']

    自行研究Python文档 https://docs.python.org/3/library/stdtypes.html#mapping-types-dict 来解决下列练习。

    1. 这个字典中有多少个同学?可以参考下len函数。
    2. 写一个函数,接受“ages”字典作为参数,返回的是其中年龄的平均值。遍历字典中所有的项使用的是items参数。
    3. 写一个函数,接受“ages”字典作为参数,返回年龄最大的同学的名字。
    4. 写一个函数,接受“ages”字典和数字“n”作为参数,返回的是一个新字典,新字典中每个同学的年龄均是“n”。比如,new_ages(ages, 10)返回的是“ages”字典的拷贝并且每个同学的年龄都是10。

    子字典部分练习

    先定义一个字典:

    1. students = {
    2. "Peter": {"age": 10, "address": "Lisbon"},
    3. "Isabel": {"age": 11, "address": "Sesimbra"},
    4. "Anna": {"age": 9, "address": "Lisbon"},
    5. }
    1. “students”字典中有多少个同学?
    2. 写一个函数接受“students”字典和一个地址(address)参数,返回一个列表,内容是所有与传入的地址相匹配的同学的名字。
      比如,调用会返回['Peter', 'Anna']