python文件内容 替换,Python对指定文件内容进行全局替换

关于对指定文件内容进行全局替换的Python实现具体解释都附在代码里了

代码如下:

import os

import sys

cs = sys.argv

old_cs = cs[1] # 将要替换掉的值赋给old_cs

new_cs = cs[2] # 将要替换成的值赋给new_cs

filename = cs[3] # 将操作的文件名赋给filename

new_file = filename + "_new"

if len(cs) != 4:

print('check it carefully and try it again!')

os._exit(0)

else:

print('------ replacing... ------')

count = 0

with open(filename, mode='r', encoding='utf-8') as f:

data1 = f.read()

if old_cs in data1:

data1 = data1.split('\n') # 将i分行切片

file_new = open(new_file, mode='w', encoding='utf-8')

for i in data1:

if old_cs in i: # 判断各行中是否存在old_cs

i = i.replace(old_cs, new_cs)

file_new.write(i + '\n')

count += 1

file_new.close()

if count > 0:

if os.path.exists(filename): # 判断路径中是否存在名为filename的文件

os.remove(filename) # 删除该文件

os.replace(new_file, filename) # 用filename给new_file重命名

print('replace successfully {} times'.format(count))

else:

print('{0} is not in {1}...'.format(old_cs, filename))

操作文件data数据如下:

小明 男 178 71

小强 男 188 77

小梦 女 168 61

小艺 女 165 55

小妮 女 161 57

小萱 女 171 46

小页 男 183 67

运行代码及结果如下:

H:\Python\anzhuangbao\helloworld>python changefile.py 72 48 data

------ replacing... ------

replace successfully 2 times

H:\Python\anzhuangbao\helloworld>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值