我正在尝试提取文件中每一行的第一个字母,然后将这些字母打印到一个新文件中。我正在逐步工作,所以我创建了能够提取每一行的第一个字母的代码,但是,当我添加代码以读取特定文件时,它似乎没有正确地遍历整个文件内容。有谁知道为什么我的 for 循环没有迭代?或者,也许是它正在迭代但没有正确地将字母添加到“行”的问题。
def secret2(m):
infile = open(m, 'r')
text = infile.read()
for line in text:
lines = text[0]
for i in range(len(text)):
if text[i] == '\n':
lines += text[i+1]
print(lines)
return(lines)
m.close()
输出:
>>> secret2('file.txt')
A
'A'
>>>
正确的输出是:
>>> secret2('file.txt')
'ALICE'
>>>
原文由 penmas 发布,翻译遵循 CC BY-SA 4.0 许可协议
您希望将每一行视为单个数据。所以使用
readlines()
而不是read
。所以你的代码应该是