根据字段名称和值从JSON中选择字段 - python

在python中,我从API调用中获取了JSON。

resp = requests.get(url)
resp.json()

我将使用我的MySQL词汇表。
我得到的这个对象很大,结构不规则(并非所有字段都可用于每个条目)。

因此,我想在此JSON中选择一些字段和一些基于值的条目。
假设JSON返回用户的个人资料,其中包含字段"name""email""age"

我想创建一个具有以下内容的新的小型JSON:

只有一个字段“电子邮件”-我们删除了没有电子邮件字段的条目。
仅当"age" = 15

虽然在SQL中我会在30秒内完成操作,但是我还没有找到如何在Python中执行操作...

python参考方案

您可以为此列出理解-我认为语法将与SQL最相似

[obj for obj in res.json() if obj.email is not None and obj.age=="15"]

或使用更具功能性的方法

def yourCustomFilter(obj):
    return obj.email is not None and obj.age=="15"

filter(resp.json(), yourCustomFilter)

或每个循环简单

filteredObjects = []
for obj in resp.json():
    if obj.email is not None and obj.age=="15":
        filteredObjects.append(obj)

Python sqlite3数据库已锁定 - python

我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…

用大写字母拆分字符串,但忽略AAA Python Regex - python

我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…

Python-熊猫描述了抛出错误:无法散列的类型“ dict” - python

更新:我正在使用“ Socrata开源API”中的一些示例代码。我在代码中注意到以下注释:# First 2000 results, returned as JSON from API / converted to Python # list of dictionaries by sodapy. 我不熟悉JSON。我已经下载了一个数据集,并创建了一个包含大量…

查找字符串中的行数 - python

我正在创建一个python电影播放器​​/制作器,我想在多行字符串中找到行数。我想知道是否有任何内置函数或可以编写代码的函数来做到这一点:x = """ line1 line2 """ getLines(x) python大神给出的解决方案 如果换行符是'\n',则nlines …

Python pytz时区函数返回的时区为9分钟 - python

由于某些原因,我无法从以下代码中找出原因:>>> from pytz import timezone >>> timezone('America/Chicago') 我得到:<DstTzInfo 'America/Chicago' LMT-1 day, 18:09:00 STD…