1 #定义一个函数,带有4个参数 2 #x 表示要更新的文件名称 3 #y 表示要被替换的内容 4 #z 表示 替换后的内容 5 #s 默认参数为 1 表示只替换第一个匹配到的字符串 6 # 如果参数为 s = ‘g‘ 则表示全文替换 7 def string_switch(x,y,z,s=1): 8 with open(x, "r", encoding="utf-8") as f: 9 #readlines以列表的形式将文件读出 10 lines = f.readlines() 11 12 with open(x, "w", encoding="utf-8") as f_w: 13 #定义一个数字,用来记录在读取文件时在列表中的位置 14 n = 0 15 #默认选项,只替换第一次匹配到的行中的字符串 16 if s == 1: 17 for line in lines: 18 if y in line: 19 line = line.replace(y,z) 20 f_w.write(line) 21 n += 1 22 break 23 f_w.write(line) 24 n += 1 25 #将剩余的文本内容继续输出 26 for i in range(n,len(lines)): 27 f_w.write(lines[i]) 28 #全局匹配替换 29 elif s == ‘g‘: 30 for line in lines: 31 if y in line: 32 line = line.replace(y,z) 33 f_w.write(line)
时间: 2024-10-11 06:05:01