我是一名初学者,正在编写一个计算行数的Python程序。文件内容如下:
我正在尝试让它计算所有小于-0.3的行数并将其归为
0.86149806
1.8628227
-0.1380086
-1
0.99927421
-1.0007207
0.99927421
0.99926955
-1.0007258
我的代码尝试如下:
counterPos = 0
counterNeg = 0
counterTot = 0
counterNeu = 0
with open('test.txt', 'r') as infile:
for line in infile:
counterTot += 1
for i in line:
if i > 0.3:
counterPos += 1
elif i < -0.3:
counterNeg += 1
else:
counterNeu += 1
我正在尝试让它计算所有小于-0.3的行数并将其归为
counterNeg
,所有大于0.3的行数为counterPos
,所有数字介于0.29和-0.29之间的行数为counterNeu
。
然而似乎并不起作用,我知道在for i in line
这一步出错了,但不确定问题出在哪里。
counterNeu
增加1,不是吗?因为0.29 > 0.3
和0.29 < -0.3
都是false,所以执行else:
块。 - user2032433counterNeu
吗?(在这种情况下,您已经完成了。)不递增?将counterPos
和counterNeu
每个递增0.5?还是其他什么? - abarnert