我目前正在研究初学者的问题 (https://www.reddit.com/r/beginnerprojects/comments/1i6sax/challenge_count_and_fix_green_eggs_and_ham/)。
面临的挑战是通读文件,用“ I”替换小写的“ i”并编写一个新的更正的文件。
我正处于程序读取输入文件,替换相关小写字母并写入新的更正文件的地步。但是,我还需要计算更正的次数。
我已经浏览了.replace()文档,但看不到有可能找到进行替换的次数。是否可以使用替换方法来计算校正次数?
def capitalize_i(file):
file = file.replace('i ', 'I ')
file = file.replace('-i-', '-I-')
return file
with open("green_eggs.txt", "r") as f_open:
file_1 = f_open.read()
file_2 = open("result.txt", "w")
file_2.write(capitalize_i(file_1))
答案 0 :(得分:1)
您可以只使用count函数:
i_count = file.count('i ')
file = file.replace('i ', 'I ')
i_count += file.count('-i-')
file = file.replace('-i-', '-I-')
i_count
将具有替换的总数。您还可以根据需要通过创建新变量来分隔它们。