У меня есть вход json

{
     "registryNo":2222904913,
     "resgistrySource":"C22",
      "DateTime":"None",
   
         "Payments":[{
                      "Paymentdetail":[
                                     {
                                     "amount":359.95,
                                     "currencyCode":"GBP",
   

Необходимо сгенерировать логический вывод, чтобы проверить, имеет ли поле кода валюты значение GBP. Если да, укажите значение валюты как «Истина», иначе «Ложь».

Это то что я написал

if "currencycode" in datastore(["Payments"][0]["paymentdetail"]) == "GBP":
     print("currencyvalue") = "True" else "FALSE"

- Кажется, это не работает.

-3
Suds 2 Сен 2020 в 11:09

2 ответа

Лучший ответ

Если я хорошо понимаю вашу проблему, вы можете попробовать сделать это:

if "currencycode" in datastore(["Payments"][0]["paymentdetail"][0]):

    if datastore(["Payments"][0]["paymentdetail"][0]["currencycode"]) == "GBP":
        print("currencyvalue = True")
    else:
        print("currencyvalue = false")

Если вы хотите вывести только «Истина» или «Ложь», сделайте следующее:

if "currencycode" in datastore(["Payments"][0]["paymentdetail"][0]):

    print(datastore(["Payments"][0]["paymentdetail"][0]["currencycode"]))

Для отметки времени вы можете сделать это:

from datetime import datetime

dt_object = datetime.fromtimestamp(your_valid_timestamp)
print(dt_object)
0
Xeyes 2 Сен 2020 в 08:41

Поскольку оператор == сам возвращает значение True или False, нет необходимости повторно назначать его.

currencycalue = datastore['Payments'][0]['Paymentdetail'][0]['currencyCode']=="GBP"
print(currencyvalue)
0
Shahir Ansari 2 Сен 2020 в 08:25