![](/img/trans.png)
[英]Python Pandas | Find maximum value only from a specific part of a column
[英]Find the value of at a specific part in JSON with Python
我有这样的代码:
myvar0 = jsonfromapi['people']['young']['data'][0][information][isreal]
myvar1 = jsonfromapi['people']['young']['data'][1][information][isreal]
myvar2 = jsonfromapi['people']['young']['data'][2][information][isreal]
print(myvar0)
print(myvar1)
print(myvar2)
Output:
true
false
false
现在 JSON 包括很多“人”。 但每次只有一个是真实的。 我的目标是只打印来自真实数据的数据。 在我上面的例子中 0。不幸的是,真正的变化。 有时是 0 是真的,有时是 1 有时是 2。我怎样才能只得到真实的那一个,并从这个真实的那得到更多的数据? 例如,当 2 为真时: myvar2 = jsonfromapi['people']['young']['data'][2][information][name]
但没有 1 和 0 的名称。
编辑:每次只有一个人是真实的/真实的。
假设您使用 Python,您可能应该遍历jsonfromapi['people']['young']['data']
中的列表。
real_person = None
for I, _ in enumerate(jsonfromapi['people']['young']['data']):
if jsonfromapi['people']['young']['data'][i][information][isreal]:
real_person = jsonfromapi['people']['young']['data'][i]
最后,您可以检查real_person
是否不是None
以确保至少有一个真人。 如果有超过 1 个实数,那么这将返回找到的最后一个。 要检索第一个,您应该在if
检查之后添加一个break
。 如果你想得到所有真实的人,你可以创建一个列表和 append 那里的一切。 希望这能回答你的问题。
由于只有一个人具有true
的价值,您可以简单地执行以下操作:
real_person = next(data for data in jsonfromapi['people']['young']['data'] if data[information][isreal])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.