我有一本字典如下:
dict_items([(True, 1), (None, 16)])
dict_items([(True, 3), (None, 15)])
随着用户数量的增加,这个数字也会增加,也就是说它可能会上升到n,所以我想找出真的和无的总数。你知道吗
对于以上数据,我想找到total\u true=4,total\u none=31
care_needs_name = {
"Communication": None,
"Continence": None,
"Daily life/lifestyle": None,
"Death and dying": None,
"Emotional support": None,
"Finance": None,
"Maintaining a safe environment": None,
"Medical": None,
"Medication": None,
"Mental capacity": None,
"Mobility": None,
"Nutrition/hydration": None,
"Personal care": None,
"Religious/cultural/spiritual needs": None,
"Sexuality": None,
"Skin integrity": None,
"Sleeping": None
}
care_plans = CarePlanNeed.objects.filter(resident=obj.resident)
today = timezone.now()
i = 0
# sum = 0
for care in care_plans:
i += 1
recent = care.history.first()
next_review = recent.history_date + datetime.timedelta(30)
if str(today) > str(next_review):
care_needs_name[care.aspect_of_life] = next_review.replace(hour=0, minute=0, second=0, microsecond=0)
else:
care_needs_name[care.aspect_of_life] = True
counts = dict(Counter(care_needs_name.values()).items())
print(counts.items())
total_review_completed = 0
total_review_to_add = 0
for k, v in counts.items():
if k == True:
total_review_completed = total_review_completed + v
else:
total_review_to_add = total_review_to_add + v
print(total_review_completed)
但我得到的是:
dict_items([(True, 1), (None, 16)])
1
dict_items([(True, 3), (None, 15)])
3
编辑2:
我有这个查询集<QuerySet [<CarePlanNeed: Communication( gbsd adcafv (12 Nov 2019))>]>
<QuerySet [<CarePlanNeed: ads( asd asd (05 Nov 2019))>, <CarePlanNeed: Communication( asd asd (05 Nov 2019))>, <CarePlanNeed: Continence( asd asd (05 Nov 2019))>]>
现在我想把所有的CarePlanNeed
加起来,这里的sum=4,即沟通+广告+沟通+自制
如果需要其他功能,可以修改第一部分。你知道吗
你可以这样做:
这将为您提供:
相关问题 更多 >
编程相关推荐