实例 - 购物车 (字典循环)

Posted 皮蛋小顽童

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实例 - 购物车 (字典循环)相关的知识,希望对你有一定的参考价值。

menu = {
    北京:{
        朝阳:{
            国贸:{
                CICC: {},
                HP: {},
                渣打银行: {},
                CCTV: {},
            },
            望京:{
                陌陌: {},
                奔驰: {},
                360: {},
            },
            三里屯:{
                优衣库:{},
                apple:{},
            }

        },
        昌平:{
            沙河:{
                老男孩:{},
                阿泰包子:{},
            },
            天通苑:{
                链家:{},
                我爱我家:{},
            },
            回龙观:{}
        },
        海淀:{
            五道口:{
                谷歌:{},
                网易:{},
                Sohu:{},
                Sogo:{},
                快手:{},
            },
            中关村:{
                youku:{},
                Iqiyi:{},
                汽车之家:{},
                新东方:{},
                QQ:{},
            },
        }
    },
    上海:{
        浦东:{
            陆家嘴:{
                CICC:{},
                高盛:{},
                摩根:{},
            },
            外滩:{},
        },
        闵行:{},
        静安:{},
    },
    山东:{
        济南:{
        },
        德州:{
            乐陵:{

            },
            平原:{},
            丁坞镇:{},
            城区:{},
        },
        青岛:{
        },
    }
}

current_layer = menu #实现动态循环
parent_layers = [] #保存所有父级,最后一个元素永远都是父级

while True:
    for key in current_layer:
        print(key)
    choice = input(>>>:).strip() #移除字符串头尾指定的字符(默认为空格)
    if len(choice) == 0:continue
    if choice in current_layer:
        parent_layers.append(current_layer) #在进入下一层之前,把当前层
        #(也就是下一层的父级)追加到列表中,下一次loop,当用户选择b,
        # 就可以直接取列表的最后一个值出来
        current_layer = current_layer[choice] #改成子层
    elif choice == b:
        if parent_layers: #空列表False,非空列表为True
            current_layer = parent_layers.pop() #取出列表的最后一个值,因为就是当前层的父级
    else:
        invalid input

 

以上是关于实例 - 购物车 (字典循环)的主要内容,如果未能解决你的问题,请参考以下文章

Cookie和JS购物车的简单实例

Vue实现购物小球抛物线的方法实例

如何通过带有for循环的字典(python)设置实例的属性

元祖,字典

添加到if循环中的字典

在字典中添加密钥之前,如何使用循环?