1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #Author: nulige 4 5 db = {} 6 path = {} 7 8 while True: 9 temp = db 10 for item in path: 11 temp = temp[item] 12 print('当前节点的所有子节点:',list(temp.keys()),' ') 13 choice = input('1: 添加节点; 2: 查看节点 (Q退出/返回上一级B) >>>') 14 if choice == '1': 15 k = input('请输入要添加的子节点名称: ') 16 if k in temp: 17 print('节点已经存在') 18 else: 19 temp[k] = {} 20 elif choice == '2': 21 k = input('请输入要查看的子节点:') 22 if k in temp: 23 path.append(k) 24 else: 25 print('子节点名称错误') 26 elif choice.lower() == 'b': 27 if path: 28 path.pop() 29 elif choice.lower() == 'q': 30 break 31 else: 32 print('输入不合法')
执行结果:
1 当前节点的所有子节点: [] 2 3 1: 添加节点; 2: 查看节点 (Q退出/返回上一级B) 4 >>>1 5 请输入要添加的子节点名称: 广东 6 当前节点的所有子节点: ['广东'] 7 8 1: 添加节点; 2: 查看节点 (Q退出/返回上一级B) 9 >>>2 10 请输入要查看的子节点:北京 11 子节点名称错误 12 当前节点的所有子节点: ['广东'] 13 14 1: 添加节点; 2: 查看节点 (Q退出/返回上一级B) 15 >>>1 16 请输入要添加的子节点名称: 北京 17 当前节点的所有子节点: ['广东', '北京'] 18 19 1: 添加节点; 2: 查看节点 (Q退出/返回上一级B) 20 >>>上海 21 输入不合法 22 当前节点的所有子节点: ['广东', '北京'] 23 24 1: 添加节点; 2: 查看节点 (Q退出/返回上一级B)