从文本文件读取多行

时间:2020-03-15 18:51:11

标签: python

我的项目的目标是计算文本文件中的所有字符。我的代码似乎可以正常工作,但是似乎只能准备文件中第一行代码,仅此而已。我可以轻松地在Java中完成此操作,但是我们必须使用python,而我在使用python方面的经验很少

我的代码如下:

import pandas as pd

from collections import Counter

with open ('myFile', "r") as myfile:
   data=myfile.readlines()

counter = Counter(lines)

print (counter['a'])
print (counter['b'])
print (counter['c'])
print (counter['d'])
print (counter['e'])
print (counter['f'])
print (counter['g'])
print (counter['h'])
print (counter['i'])
print (counter['j'])
print (counter['k'])
print (counter['l'])
print (counter['m'])
print (counter['n'])
print (counter['o'])
print (counter['p'])
print (counter['q'])
print (counter['r'])
print (counter['s'])
print (counter['t'])
print (counter['u'])
print (counter['v'])
print (counter['w'])
print (counter['x'])
print (counter['y'])
print (counter['z'])

3 个答案:

答案 0 :(得分:0)

我不确定您的代码中的lines是什么,您正在将包含文本行的列表分配到data变量中。如果要将整个文本作为一个字符串读取,则只需使用read()方法。

from collections import Counter

with open ('myFile', "r") as myfile:
   data = myfile.read()

counter = Counter(data)

print (counter['a'])
print (counter['b'])
...

答案 1 :(得分:0)

我意识到我发布的代码来自我同时使用相同版本号打开的两个编辑器,这导致了错误。我已经解决了这个问题(下面是新的完整代码),并且正在“运行”,我需要根据我的Java代码结果进行检查。我已经包含了代码的结果

import pandas as pd

from collections import Counter



data = open('myFile.txt').read()
data.lower()
print (data)


counter = Counter(data)

print (counter['a'])
print (counter['b'])
print (counter['c'])
print (counter['d'])
print (counter['e'])
print (counter['f'])
print (counter['g'])
print (counter['h'])
print (counter['i'])
print (counter['j'])
print (counter['k'])
print (counter['l'])
print (counter['m'])
print (counter['n'])
print (counter['o'])
print (counter['p'])
print (counter['q'])
print (counter['r'])
print (counter['s'])
print (counter['t'])
print (counter['u'])
print (counter['v'])
print (counter['w'])
print (counter['x'])
print (counter['y'])
print (counter['z'])

更新后的代码的结果:

28042
3064
9280
12192
45763
3434
5143
3523
24633
1107
328
16641
8817
23809
18195
9202
3611
23139
25219
25990
19636
5302
465
1396
1257
473

答案 2 :(得分:-1)

您是否尝试过以下方法?

file = open("myFile.txt", "r")
data = file.read()
number_of_characters = len(data)
print('Number of characters in text file : {}'.format(number_of_characters))
file.close()
相关问题