你好,我正试图写一个程序,读取不同品种的不同动物的CSV文件。不同的动物,名字不同,可以是同一个品种。(想象两只猫叫鲍勃和萨姆)
品种在一列,名字在另一列。你知道吗
我希望能够检查所有的动物,并计算每个品种的动物数量。你知道吗
到目前为止,我的代码是这样的:
dragon = open('dragons.csv')
breed = {}
for line in dragon:
row = line.strip().split(',')
if row[4] in breed.keys():
else:
breed[row[4]] = 1 #The Breed is in the fourth column
我该怎么做?你知道吗
谢谢你!你知道吗
正如评论所指出的,缩进在python中很重要。
else
与if
的缩进级别不同,因此会出现错误。你知道吗至于计数,
+=
运算符对此很有用,因此if/else块可以如下所示:您的
else
块缩进不足(else
可以与for
配对,但这并不常见,而且代码的逻辑说明这里有错误)。你知道吗即使解决了这个问题,Python中也不能有空块,因为Python至少需要一行缩进的代码来检测块的缩进级别(允许它检测块何时结束)。如果没有为块提供任何实体(立即开始新块,或在提供实体之前结束外部块),则会出现您提到的“预期缩进块”错误。因此,您可以使用
pass
(no op关键字的意思是“这里有一些东西放在一个什么都不做的块中”):或者只是反转
if
测试来控制else
块,这样就不需要两者:相关问题 更多 >
编程相关推荐