Как я могу подключить JSON true или false к моему скрипту Python

Здравствуйте, я использую python и хочу подключить JSON True или False к моему коду, поэтому, если "dummy": "True", сделайте ... else: do ... Мой JSON

      [
  {
    "profilename": "Test3",
    "email": "email@outlook.com",
    "password": "Password2*",
    "payment": "Paypal",
    "product": "https://www.unkown.de/de/product/",
    "Dummy":"False"
  },
  {
    "profilename": "Test1",
    "email": "email@gmail.com",
    "password": "Password1*",
    "payment": "Paypal",
    "product": "https://www.unkown.de/de/product/",
    "Dummy":"True"
  }
]

Мой код на Python:

      profile_name =  "Test3"

with open('Data2.json', 'r') as handle:
    json = json.load(handle)


data = [x for x in json if x['profilename'] in profile_name]
email = (data[0]['email'])
password = (data[0]['password'])
payment = (data[0]['payment'])
product = (data[0]['product'])
dummy = (data[0]['dummy'])


def getLogin():
    if dummy = "True":      <----- This doesnt work, want to get this fixed
        import Script2
    else:
    print("starting login process")

Например, если "Dummy": "True" должно соответствовать условию if, а если "dummy": false, он должен выполнять условие else, как я могу это сделать?

1 ответ

Решение

Я не уверен, что понимаю, в чем ваша настоящая проблема. Но вот несколько комментариев к коду, которым вы поделились.

  • Намерение вашего последнего отпечатка выключено.
  • import Script2вероятно, это не то, что вам нужно. Если есть функция в Script2импортируйте его вверху. Затем просто вызовите функцию.
  • в if ты не используешь ==
  • вы перезаписываете модуль переменной с именем json

Вот переработанная версия

      import Script2
import json
with open('Data2.json', 'r') as handle:
    json_out = json.load(handle)

profile_name = ['Test1']

data = [x for x in json_out if x['profilename'] in profile_name]
email = (data[0]['email'])
password = (data[0]['password'])
payment = (data[0]['payment'])
product = (data[0]['product'])
dummy = (data[0]['Dummy']=='True')

def getLogin():
    if dummy:
        Script2.myfunction()
    else:
        print("starting login process")

Дополнительным незначительным улучшением будет замена понимания списка генератором, так как вам в любом случае не нужен список:

      data = next(x for x in json_out if x['profilename'] in profile_name)
email = (data['email'])
password = (data['password'])
payment = (data['payment'])
product = (data['product'])
dummy = (data['Dummy']=='True')
Другие вопросы по тегам