python - 字典上的 ZIP 功能
问题描述
我正在为我所参加的课程的作业而苦苦挣扎。
创建一个函数,该函数返回一个国家列表,案例数等于一: 提示:您可以使用 Python 中的 zip() 函数同时遍历两个列表。
因此,前面的问题是获得有单一冠状病毒病例的国家数量。有 7 个国家作为输出 - 以下是为此工作的。
# Add your code below
def single_case_country_count(data):
item = data['Total Cases']
count = item.count(1)
if count == 0:
print('None found')
return count
# pass
然而,我在第二部分返回这 7 个国家的名称时遇到了困难。
类型(最新)显示字典
我编写了这段代码,假设我将有一个字典,其中只有它等于 1 和原始列表的情况;通过压缩功能对它们进行分组,最后只显示国家列表。
def single_case_countries(data):
cases = data['Total Cases'] == 1
names = data['Country']
zipped = zip(names,cases)
final = list(zipped)
return final['Country']
# pass
TypeError:'bool' 对象不可迭代
这里明显的问题是我无法使用“cases = data['Total Cases'] == 1”过滤字典,因为它返回一个布尔值。
想知道是否有一些建议(特别是在字典上过滤特定值
解决方案
我设法用以下代码解决了这个问题:
def single_case_countries(data):
countries = []
for country,cases in zip(data["Country"],data["Total Cases"]):
if cases == 1:
countries.append(country)
return countries
推荐阅读
- node.js - 所需类型“上传!”的变量“$picture” 没有提供
- numpy - SVD 在连续循环下没有收敛于线性最小二乘
- slack - Slack App - 是否可以根据用户自定义块?
- cytoscape.js - 为什么 Cytoscape.js 图没有跨越引导卡的整个宽度?
- javascript - Django中的MapBox标记集群
- python - 归并排序算法的误区
- python - 有没有办法在不使用全局关键字或循环的情况下做到这一点?
- angular-cli - 角度构建导致错误 type_check_block
- python - 按类列和时间对数据框进行分组,然后对每个类的另一列求和
- spring - 应用程序在 Spring Boot 中关闭