我需要从文件中读取提到字母v的次数。我实际上知道一个事实,如果' v'在那句话中,它将是第一个出现的东西。我设置它的方式是逐字逐句计算,这是它写它的方式,但我想只提一个句子提及次数' v'在整个文件中提到。
f = open("triangle.txt", 'r') #opens the given name file to read input
fw = open("convert.txt",'w') #opens the given name file to write in
for line in f:
data = line.strip().split(" ")
vertices=0
vertices =(str(data.count('v')))
fw.write("Number of vertices = " + vertices +'\n')
f.close()
fw.close()
我试过
vertices += int((str(data.count('v'))))
然而,它一直给我一个错误信息,我无法将字符串转换为整数。 任何建议都非常感谢。
答案 0 :(得分:0)
如果您只想知道文件中提到v
的次数,为什么不简单地执行此操作:
with open('file.dat', 'r+') as f:
v_count = f.read().count('v')
答案 1 :(得分:0)
首先,如果你想要一个提到'v'次数的句子,那么就写下这行
fw.write("Number of vertices = " + vertices +'\n')
出于循环。其次,
data.count('v')
将为您提供一个int值作为输出,因此您不必先将其转换为字符串然后再转换为整数。这是修改后的代码;
f = open("triangle.txt", 'r') #opens the given name file to read input
fw = open("convert.txt",'w') #opens the given name file to write in
vertices=0
for line in f:
data = line.strip().split(" ")
vertices += ((data.count('v')))
fw.write("Number of vertices = " + str(vertices) +'\n')
f.close()
fw.close()
此外,如果句子中的单个词被提及,则您的代码仅计为“v”。要计算'v'发生的总次数,请使用@bad_keypoints建议的内容。