我正试着从一个文件中读出输入文件一行一行。然后我需要检查每一行,看看行中的字母是否可以用来组成“土豚”。也可以使用大写字母,字母可以分散在整行中。文本文件的内容包括:
No aardv*rks here!
Only armadillos and anteaters.
Animals are run down: very awful road kill.
I prefer a quick guacamole made from avocados.
所以第3行和第4行只应该返回一个正值,例如“第3行的Aardvark”。在
我已经走了这么远-我被卡住了!在
^{pr2}$请理解,我正在学习初学者教程,所以没有任何疯狂和花哨的功能,会打击我的小,脆弱的心灵,请!!在
非常感谢。在
编辑
这是最终奏效的解决方案。再次感谢您的贡献!在
file = open('input.txt').read().lower()
listed = file.split('\n')
for index, sentence in enumerate(listed):
a = sentence.count('a')
r = sentence.count('r')
d = sentence.count('d')
v = sentence.count('v')
k = sentence.count('k')
if a>=3 and r>=2 and d>=1 and v>=1 and k>=1:
print('Aardvark on line '+str(index+1))
我知道这是一个旧的线程,但对于那些通过Grok执行此任务的人来说,下面的代码只使用到目前为止在本课程中所学的内容。希望你觉得有用!在
open('input.txt').read()
将文件的全部内容读入内存。因此,如果input.txt
是一个足够长的文件,计算机将耗尽其可用内存。相反,尝试使用文件迭代器一次读取一行,例如另请参见In Python, why do we need readlines() when we can iterate over the file handle itself?。在
相关问题 更多 >
编程相关推荐