• Want to delete the block which doesn't have the key "email".
  • Want to extract only email value
  • 1 个评论
    如果你只想提取电子邮件的值,那么你不需要删除那些没有电子邮件键的块。
    python
    dictionary
    catty
    catty
    发布于 2020-03-06
    1 个回答
    Felix Kleine Bösing
    Felix Kleine Bösing
    发布于 2020-03-06
    已采纳
    0 人赞同

    你不需要删除这些块。遍历这些人,如果有电子邮件密钥,就取走它。

    顺便说一下,你的文件里有一个错误。在名称的值之后,每个对象中都缺少一个逗号。

    data =  [
        "name": "A",
        "email": "A@test.com",
        "admin": False,
        "groupAdmin": False,
        "profileUpdatable": True
      {"name": "B",
        "email": "B@test.com",
        "admin": False,
        "groupAdmin": False,
        "profileUpdatable": True
      {"name": "C",
        "email": "C@test.com",
        "admin": False,
        "groupAdmin": False,
        "profileUpdatable": True
      {"name": "A",
        "admin": False,
        "groupAdmin": False,
        "profileUpdatable": True
    def get_emails(data: list):
        e_mails = []
        for person in data:
            if "email" in person:
                e_mails.append(person["email"])