如何使用 Python 中的 Json 创建功能性 "if" 条件?
how to make a functional "if" condition using Json in Python?
我正在尝试比较一个值,如果它存在于 Json 中,使用“if 和 else”,但它总是首先落入“else”条件。
我的代码:
with open(arquivo, 'r') as f:
data= json.load(f)
data2 = data["Privado"]
baka = 1199736520 #Id exists in json
for s in data2:
abc = s["id"]
if baka == abc:
print("It's here")
else:
print("OOPS!")
我的Json:
{
"Privado": [
{
"username": "Someone",
"id": 700829116,
"date": "21/05/22",
"time": "15:39:52",
"link": "https://abc/def"
},
{
"username": "HERE",
"id": 1199736520,
"date": "21/05/22",
"time": "16:37:49",
"link": "https:/a/somelink"
},
{
"username": "Teacher",
"id": 5163838307,
"date": "21/05/22",
"time": "17:32:09",
"link": "no link"
}
]
}
输出:
OOPS!
It's here
OOPS!
[Program finished]
如果我在“else”条件下使用“break”,它不会执行第一个条件。所以我问...如何使条件起作用?
如果找到,打印:“我找到”,如果没有,打印:“我没找到”只打印一次...
您似乎想检查是否至少找到了一次您要查找的值。
您可以使用:
for s in data2:
if s['id'] == baka:
print('found')
break # exit loop
else: # no break
print('not found')
注意这里是for/else
,不是if/else
。
我正在尝试比较一个值,如果它存在于 Json 中,使用“if 和 else”,但它总是首先落入“else”条件。
我的代码:
with open(arquivo, 'r') as f:
data= json.load(f)
data2 = data["Privado"]
baka = 1199736520 #Id exists in json
for s in data2:
abc = s["id"]
if baka == abc:
print("It's here")
else:
print("OOPS!")
我的Json:
{
"Privado": [
{
"username": "Someone",
"id": 700829116,
"date": "21/05/22",
"time": "15:39:52",
"link": "https://abc/def"
},
{
"username": "HERE",
"id": 1199736520,
"date": "21/05/22",
"time": "16:37:49",
"link": "https:/a/somelink"
},
{
"username": "Teacher",
"id": 5163838307,
"date": "21/05/22",
"time": "17:32:09",
"link": "no link"
}
]
}
输出:
OOPS!
It's here
OOPS!
[Program finished]
如果我在“else”条件下使用“break”,它不会执行第一个条件。所以我问...如何使条件起作用?
如果找到,打印:“我找到”,如果没有,打印:“我没找到”只打印一次...
您似乎想检查是否至少找到了一次您要查找的值。
您可以使用:
for s in data2:
if s['id'] == baka:
print('found')
break # exit loop
else: # no break
print('not found')
注意这里是for/else
,不是if/else
。