python - 如何正确存储用户数据?

标签 python python-2.7 dictionary key

我正在嵌套字典中恢复用户的数据,如下所示:

   user_dict = {user_name:{product:amount, product:amount}}

因此,user_name 是用户的用户名。产品是用户放入购物篮的东西(例如橙汁),数量是特定产品的数量。因此,例如:

user_dict = {"sara" : {"orange juice": 2, "apple juice" : 4}, "ali": {"banana":3}}

我想要做的是,当用户购买一些东西并将它们放入(user_dict)然后注销时,当同一用户再次登录时,我想获取用户的购物篮,如下所示:假设 sara 已登录并在她的篮子(user_dict)中放入一些东西然后注销,当sara再次登录时,我想从新字典(称为篮子)中的(user_dict)获取sara的信息,如下所示:

basket = {"orange juice": 2, "apple juice" : 4}

此外,如果登录的用户 (user_name) 购物篮中没有任何内容,我希望将购物篮清空。所以,我想让用户的事情不被干扰,我不想丢失任何信息。我几乎完成了我的项目,但这就是我所坚持的,所以请帮助我。

这是我完成此任务的代码行:(但代码无法按我想要的方式工作)

for key in user_dict.keys():
    if user_name == key:
        key_sto = " "
        nested_dict = user_dict[user_name]
        val = a.values()
        val_in_nested = val[0]
        key_in_nested = key_sto.join(a)
        basket[key_in_nested] = val_in_nested
    elif user_name != key :
        basket = {}

最佳答案

我能够解决这个问题,所以这是代码。

for key, amount in user_dict.items():
    if key == user_name:
        basket = amount

if user_name not in user_dict.keys():
    basket = {}

关于python - 如何正确存储用户数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48232976/

相关文章:

python - 如何获取列表/元组的每个元素,其中列表作为参数传递给Python中的函数?

python - 计算数据帧中两个单独列中的值不相等的次数百分比

python - Django URL 变量 - URL 中的业务名称而不是 ID

Python 因逻辑错误而退出

python - 当我将 ANSI 字符串更改为 UNICODE 字符串时,函数 re.sub() 拒绝工作

python - 合并 2 个字典并将它们存储在 pandas 数据框中,其中一个字典具有可变长度列表元素

python - 词典理解查询

Python:如何使用列表元素更改字典键

python - 在 Python 中创建类的 'grid' 实例

python - 从 python 编译 latex