gitpython如何修改文件内容不影响格式

gitpython如何修改文件内容不影响格式,第1张

三种方法

_弧⑿薷脑募绞?

_ef alter(file,old_str,new_str):

?

?"""

_婊晃募械淖址?

?:param file:文件

?:param old_str:就字符串

?:param new_str:新字符串

?:return:

?

?"""

_ile_data = ""

?

_ith open(file, "r", encoding="utf-8") as f:

?

_or line in f:

?

_f old_str in line:

?

_ine = line.replace(old_str,new_str)

?

_ile_data += line

?

_ith open(file,"w",encoding="utf-8") as f:

?

_.write(file_data)

?

_lter("file1", "09876", "python")

?

__言募谌莺鸵薷牡哪谌菪吹叫挛募薪写娲⒌姆绞?

?

?2.1 python字符串替换的方法,修改文件内容

?

_mport os

?

_ef alter(file,old_str,new_str):

?

?"""

?

_婊坏淖址吹揭桓鲂碌奈募校缓蠼募境挛募奈次募拿?

?

?:param file: 文件路径

?

?:param old_str: 需要替换的字符串

?

?:param new_str: 替换的字符串

?

?:return: None

?

?"""

?

_ith open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:

?

_or line in f1:

?

_f old_str in line:

?

_ine = line.replace(old_str, new_str)

?

_2.write(line)

?

_s.remove(file)

?

_s.rename("%s.bak" % file, file)

?

_lter("file1", "python", "测试")

?

?2.2 python 使用正则表达式 替换文件内容 re.sub 方法替换

?

_mport re,os

?

_ef alter(file,old_str,new_str):

?

_ith open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:

?

_or line in f1:

?

_2.write(re.sub(old_str,new_str,line))

?

_s.remove(file)

?

_s.rename("%s.bak" % file, file)

通常的做法是先将文件的所有内容读入内存,修改后再全部写回原文件。

如果文件中所有数据的偏移地址都是固定的,那么可以以r+方式打开文件,将文件指针移动到要修改的数据处,写入新数据覆盖即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12022789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存