codegeex可辅助实现多格式数据批量替换:一、str.replace()用于静态字符串替换;二、re.sub()支持正则灵活匹配;三、pandas处理csv/excel结构化数据;四、递归遍历替换json嵌套字段;五、fileinput原地修改大文本文件。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望使用CodeGeeX辅助编写Python脚本,实现对文本、CSV、JSON或字符串中指定数据的批量替换,可通过多种编程方式达成目标。以下是几种可直接在CodeGeeX中提示生成并运行的有效方法:
一、使用str.replace()进行简单字符串替换
该方法适用于已知明确原始值与替换值、且无需正则匹配的静态文本替换场景,执行效率高,语法简洁。
1、定义原始字符串变量,例如:text = "苹果很好吃,苹果很便宜,苹果是水果"。
2、调用replace方法执行全局替换,例如:new_text = text.replace("苹果", "香蕉")。
3、打印结果验证:print(new_text),输出为“香蕉很好吃,香蕉很便宜,香蕉是水果”。
二、使用re.sub()进行正则模式替换
该方法适用于需按格式识别(如邮箱、手机号、日期)或模糊匹配(如大小写不敏感、含空格变体)的数据替换,灵活性强。
1、导入正则模块:import re。
2、构造带标志的替换语句,例如将所有数字序列替换为"[NUMBER]":result = re.sub(r'\d+', '[NUMBER]', "订单号:10023,金额:98.5")。
3、如需忽略大小写,添加re.IGNORECASE参数:re.sub(r'error', 'warning', log_line, flags=re.IGNORECASE)。
三、使用pandas处理CSV/Excel中的列数据替换
该方法适用于结构化表格数据,支持按列名、条件筛选、多值映射等方式批量更新,适合业务数据清洗场景。
1、读取文件:import pandas as pd; df = pd.read_csv("data.csv")。
2、对单列执行值映射替换:df["status"] = df["status"].replace({"pending": "waiting", "done": "completed"})。
3、保存回文件:df.to_csv("data_updated.csv", index=False)。
四、使用json.load()与递归遍历替换JSON嵌套字段
该方法适用于配置文件或API响应数据中深层嵌套键值对的定向更新,能保持原有JSON结构不变。
1、加载JSON数据:with open("config.json") as f: data = json.load(f)。
2、定义递归替换函数,例如将所有键名为"host"的值统一改为"api.example.com":def replace_host(obj): ... if isinstance(obj, dict): for k in obj: if k == "host": obj[k] = "api.example.com"; else: replace_host(obj[k])。
3、调用并写入:replace_host(data); with open("config_new.json", "w") as f: json.dump(data, f, indent=2)。
五、使用fileinput原地修改文本文件内容
该方法适用于无需加载全部内容到内存的大文本文件(如日志),支持就地编辑,节省内存开销。
1、导入模块并启用就地模式:import fileinput; for line in fileinput.input("log.txt", inplace=True):。
2、对每行执行替换并重写:print(line.replace("DEBUG", "INFO"), end='') if "DEBUG" in line else print(line, end='')。
3、确保inplace=True参数生效,原始文件将被自动覆盖更新。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











