我想根据 python 中的输入创建这样的字典

I want to create a dict like this from input in python

所有内容必须从输入中插入

graph={
'A':{'B':3,'C':4},
'B':{'A':3,'C':5},
'C':{'B':5,'D':'1'},
'D':{'C':1},
}

以JSON格式输入,然后您可以轻松地使用json.loads将其转换为字典。

>>> import json
>>> graph = json.loads(input("Enter graph as JSON: "))
Enter graph as JSON: {"A":{"B":3,"C":4},"B":{"A":3,"C":5},"C":{"B":5,"D":"1"},"D":{"C":1}}
>>> import pprint
>>> pprint.pprint(graph)
{'A': {'B': 3, 'C': 4},
 'B': {'A': 3, 'C': 5},
 'C': {'B': 5, 'D': '1'},
 'D': {'C': 1}}
def make_dict():
    d = {}
    while True:
        key = input("Enter the key of dict or stay blank to finish adding key to this level of dict: ")
        if key == "":  # just stay blank to out from func
            break
        ch = input(f"Do you wanna to create nested dict for the key{key}? [y / <Press Enter for No>] ")
        if ch == "y":
            value = make_dict()  # use recursion
        else:
            value = input(f"Enter the value for the key {key}: ")
        d[key] = value
    return d


print(make_dict())

link to screenshot

record_to_insert = int(input("num of record to insert :: "))

dic = {}
for i in range(record_to_insert):

   print("")
   key_name = input("parent key name :: ")
   dic[key_name] = {}

   print("Enter how many number of key,value pairs you want for key :: ", 
   key_name)
   num_of_child_keyvalues_to_insert = int(input(""))

   for k in range(num_of_child_keyvalues_to_insert):

      key = input("child key name :: ")
      value = input("Value name :: ")
      dic[key_name][key] = value


print(dic)