直接使用configparser对ini文件进行修改后,注释信息会丢失。所以曲线救国,写一个小功能,通过替换文件中的字符串,修改ini配置文件中的字段取值,注释信息就会保留住。
代码如下:
# 替换test.ini文件中的option=1字符串为option=0
class FileUtil:
def alter(self, file, old_str, new_str, encode='UTF-8'):
替换文件中的字符串
:param file:文件名
:param old_str:就字符串
:param new_str:新字符串
:return:
file_data = ""
with open(file, "r", encoding=encode) as f:
for line in f:
if old_str in line:
line = line.replace(old_str,new_str)
file_data += line
with open(file, "w", encoding=encode) as f:
f.write(file_data)
# 判断修改后的新字符串在文件中是否存在
def new_str_exist(self, file, new_str):
with open(file, "r", encoding=encode) as f:
for line in f:
if new_str in line:
return True
return False
util = FileUtil()
if __name__ == '__main__':
encode = 'gbk'
setup_path = r'D:\工具'
file_list = [r'\Data\test.ini', r'\Caches\Data\test.ini']
old_str = 'option=1'
new_str = 'option=0'
for file in file_list:
file_path = setup_path + file
util.alter(file_path, old_str, new_str, encode)
result = util.new_str_exist(file_path, new_str)
if(result):
print(new_str + " 在文件中存在。 " + file_path)
else:
print(new_str + " 在文件中不存在!!! " + file_path)
print("文件修改完成,请检查!")
在数据处理时,我们常常需要将一个文本文件中的某些特定的字符串替换为另外一个。例如,在做数据清洗时,如果发现有一些错误的信息或者是格式不规范的内容,我们可以通过Python编写程序来自动化地去进行处理。以上就是如何使用Python来实现对文本文件中指定的字符串进行替换的方法。如果您也需要进行类似的数据处理操作,建议您参考本篇文章所提供的代码进行编写。上述代码中,首先我们定义了目标文件的路径、需要被替换的词语列表以及使用新词语来替换。循环中,我们对每个需要被替换的词语逐一进行替换。
php5.2升级到5.3后,原& new的写法已经被放弃了,可以直接new了,面对上百个php文件,手动修改简直是想要命,所以写了个脚本,分分钟搞定。
复制代码 代码如下:#-*- coding:utf-8 -*- #!/usr/bin/python
import os
#定义程序根目录rootpath=’D:\\wamp\\www\\erp\\app’
def m_replace(path): for item in os.listdir(path): nowpath=os.path.join(path,item) if os.path.isdir(nowpath): m_re
nargs = len(sys.argv)
if not 3 <= nargs <= 5:
print('usage: %s search_text repalce_text [infile [outfile]]' % \
os.path.basename(sys.argv[0]))
else:
search_tex
代码:将读取的源文件批量换行后写入新文件
# changeCharacter(打开源文件路径, 写入目标文件路径, 待转换字符, 目标字符)
def changeCharacter(_in_open, _out_open, _old_char, _new_char):
_db = _in_open.read()
_out_open.write(_db.replace(_old_char,
Python中replace()函数把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。replace()函数语法:str.replace(old, new[, max])参数:old -- 将被替换的子字符串。new -- 新字符串,用于替换old子字符串。max -- 可选字符串, 替换不超过 max 次。返回值:返回字符串中的 o...
如何打开文件Stud.txt,然后用"Orange"替换任何出现的"A"?请(一如既往)遵循一般问题指南,说明任何特殊限制,显示您迄今为止尝试过的内容,并询问具体让您感到困惑的内容。另外,请用[homework]标签标记你的作业。相关:如何使用Python搜索和替换文件中的文本?1234with open("Stud.txt","rt") as fin:with open("out.txt","w...
咪哥杂谈本篇阅读时间约为 6 分钟。1前言上周用 Python 帮同学写了一个文件以及文件内容替换的小工具,原本是没有界面的,纯属编码,后来为了做成小工具,特意加上了界面。今天上来给大家...
import fileinput
for line in fileinput.input(“要修改的文件名", inplace=1):
line=line.replace(“要修改的字符串1”,”要替换的字符串1"")
line=line.replace(“要修改的字符串2", “要替换的字符串2")
print(line,end="")
1.一定要加print(line),否则替换后源文件变成空白文件了