对csv文件中的多个字符进行索引



我正试图将特定字符索引到它们自己的变量中,而我只能对1个字符执行此操作。

with open(fileName) as f:
count1 = sum(l[0] == '1' for l in f)
count2 = sum(l[0] == '2' for l in f)
print(count1)
print(count2)

这是我的输出

50

根据csv文件中的值,它应该是:

54

我应该提到,当我将第一个变量中的值从"1"更改为"2"时,它确实给了我4,但出于某种原因,我不能同时执行这两个操作。

好吧,一旦在f上迭代一次,f就会耗尽。也就是说,从中阅读不会得到任何回报。

基本上有两种方法可以解决这个问题:

1:打开文件两次

with open(fileName) as f:
count1 = sum(l[0] == '1' for l in f)
with open(fileName) as f:
count2 = sum(l[0] == '2' for l in f)

2:将文件读入内存并使用该

with open(fileName) as f:
lines = f.readlines()
count1 = sum(l[0] == '1' for l in lines)
count2 = sum(l[0] == '2' for l in lines)

你用哪一个取决于你。

(代码未经测试。可能包含拼写错误(

相关内容

  • 没有找到相关文章

最新更新