我试图从下面的列表中找到以字母V开头的国家的计数:
['USA', '249', '158', '84', '8.7'],
['Uruguay', '115', '35', '220', '6.6'],
['Uzbekistan', '25', '101', '8', '2.4'],
['Vanuatu', '21', '18', '11', '0.9'],
['Venezuela', '333', '100', '3', '7.7'],
['Vietnam', '111', '2', '1', '2.0'],
['Yemen', '6', '0', '0', '0.1'],
['Zambia', '32', '19', '4', '2.5'],
['Zimbabwe', '64', '18', '4', '4.7']
代码:
^{pr2}$不幸的是,count总是返回零。有人能帮忙吗?在
Python不使用斜杠来表示regex,
in
执行精确的搜索。导入并使用re
或使用str.startswith()
,如其他答案所示。在尝试使用
startswith
:或者:
^{pr2}$为什么代码不能按预期工作
您编写的代码总是返回一个0的计数,因为第4行的计算结果从未为真。第4行总是错误的,因为它检查
'/V+'
是否与它所显示的一样,是in
国家的名称,但永远不会是这样。此外,如果一个国家的名字像'Japmeri/V+na'
这样古怪,你会收到一个假阳性修复
下面是如何使代码变得更好,我将比前面的答案更进一步,使其更具可读性和健壮性。在
^{pr2}$我希望这能回答你的问题。编码快乐!在
相关问题 更多 >
编程相关推荐