#python #if-statement
#python #если-оператор
Вопрос:
Я пытаюсь написать оператор if, который не добавляет ‘id’ ‘1062066’, но он не работает
Мой код:
if not event['id'] in ['1062066']
JSON:
"id":1062066,
"number":9,
"name":"COASTAL MIDWEST TRANSPORT HANDICAP",
"startsAt":"2020-10-03T09:25:00 00:00",
"url":"https://www.odds.com.au/horse-racing/kalgoorlie/race-9/?date=2020-10-03",
"isAbandoned":false,
"resulted":false,
"results":null,
"meetingId":184543,
"regionIconUrl":"https://puntcdn.com/flags/@2x/AU@2x.png",
"regionName":"Australia"
Комментарии:
1. Более поздний контейнер вашего
if
—else
содержит str , тогдаevent["id"]
как является int . Попробуйте преобразовать LHS какstr
(str(event["id"])
)
Ответ №1:
Ответ id
in JSON имеет тип int
. Вам нужно будет преобразовать идентификатор str
в, чтобы проверить.
if not str(event['id']) in ['1062066']
Комментарии:
1. Зачем использовать str вместо int?
if event['id'] not in [1062066]
2. Из вашего вопроса, если оператор проверяет
id
типint
по спискуid's
типовstr
. Из ответа JSON это выглядит какid
типint
. Так что либо создайте списокid's
типовint
, либо измените типid
tostr
. Любой решит проблему.
Ответ №2:
попробуйте это if not str(event['id']) == str(1062066):