Shu*_*ota 1 python dictionary list python-3.x
我有四件事要使用push_to_dict方法推送到 dict user_post_dict
user_post_dict= {}
def push_to_dict(user_email, post_id, question_text, question_answer):
if user_email in user_post_dict:
if post_id in user_post_dict[user_email]:
user_post_dict[user_email][post_id][question_text] = question_answer
else:
user_post_dict[user_email][post_id] = {}
user_post_dict[user_email][post_id][question_text] = question_answer
else:
user_post_dict[user_email] = {}
user_post_dict[user_email][post_id] = {}
user_post_dict[user_email][post_id][question_text] = question_answer
push_to_dict('abc@gmail.com',1,'what is this?', 'this is something')
push_to_dict('abc@gmail.com',2,'what is that?', 'that is something')
push_to_dict('def@gmail.com',1,'what is this?', 'this is something')
push_to_dict('def@gmail.com',2,'what is that?', 'that is something')
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来优化代码或缩短代码。
您可以使用defaultdict
from collections import defaultdict
user_post_dict= defaultdict(lambda : defaultdict(defaultdict))
def push_to_dict(user_email, post_id, question_text, question_answer):
user_post_dict[user_email][post_id][question_text] = question_answer
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
217 次 |
| 最近记录: |