如果指定位置超出文件内容长度则在末尾添加,如果指定位置在文件内容中则从中修改
如:文件a.txt中内容为”gggg”,替换内容为”gloryroad”,替换位置为1,则第二个g替换成gloryroad,则为”ggloryroadgg”,若替换位置为4,则超出gggg索引位置,直接在末尾添加,则为”gggggloryroad”
def func(n,target_str):
with open("1003.txt","r+",encoding="utf-8") as fp:
word_str = fp.read()
print(word_str)
if n < len(word_str):
word_list = list(word_str)
word_list[n] = target_str
print(word_list)
word_str = "".join(word_list)
print(word_str)
fp.seek(0,0)#需要指定下游标
fp.write(word_str)
else:
word_str = word_str+target_str
fp.seek(0,0)#需要指定下游标
fp.write(word_str)
func(2,"111")
func(50,"222")