使用python检查json文件中是否存在值
我有以下json文件(banneds.json): 我总是收到“错误”的结果,但价值是存在的,有人能告诉我我做错了什么吗?我整晚都在努力寻找解决方案,但没有人能奏效:(使用python检查json文件中是否存在值,json,python-3.x,Json,Python 3.x,我有以下json文件(banneds.json): 我总是收到“错误”的结果,但价值是存在的,有人能告诉我我做错了什么吗?我整晚都在努力寻找解决方案,但没有人能奏效:( 感谢您的帮助!您正在将数据作为字典对象进行检查。使用if check in data进行检查时,它会检查数据对象是否具有与check变量值匹配的键(data.keys()列出所有键) 一个简单的方法是使用如果签入数据[“players”]。\uu str\uu(),它将值转换为字符串并搜索匹配项 如果您想确保checkvalue
感谢您的帮助!您正在将数据作为字典对象进行检查。使用
if check in data
进行检查时,它会检查数据对象是否具有与check
变量值匹配的键(data.keys()
列出所有键)
一个简单的方法是使用如果签入数据[“players”]。\uu str\uu()
,它将值转换为字符串并搜索匹配项
如果您想确保
check
value只检查stream64
值,您可以编写一个简单的函数来迭代所有“玩家”并检查他们的“stream64”值。另一个解决方案是列出“stream64”值,以便更快更容易地检查。您正在将数据作为字典对象进行检查。使用if check in data
进行检查时,它会检查数据对象是否具有与check
变量的值相匹配的键(data.keys()
列出所有键)
一个简单的方法是使用如果签入数据[“players”]。\uu str\uu()
,它将值转换为字符串并搜索匹配项
如果您想确保check
value只检查stream64
值,您可以编写一个简单的函数,该函数将迭代所有“玩家”并检查他们的“stream64”值。另一个解决方案是列出“stream64”值,以便更快、更容易地检查。您可以使用any()
检查steam64
键的值是否存在
例如:
import json
def check_value(data, val):
return any(player['steam64']==val for player in data['players'])
with open('banneds.json', 'r') as f_in:
data = json.load(f_in)
print(check_value(data, 76561198046619692))
印刷品:
True
您可以使用any()
检查stream64
键的值是否存在
例如:
import json
def check_value(data, val):
return any(player['steam64']==val for player in data['players'])
with open('banneds.json', 'r') as f_in:
data = json.load(f_in)
print(check_value(data, 76561198046619692))
印刷品:
True
感谢您的帮助,我按照您的想法创建了一个列表,并将所有steam64值附加到此列表中,之后我使用“in”进行验证。现在一切正常。感谢您的帮助,我按照您的想法创建了一个列表,并将所有steam64值附加到此列表中,之后我使用“in”进行验证。现在一切正常。