You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:Python实现文本文件中数字后逗号替换为小数点

解决方案

要实现只替换数字后的逗号为小数点,同时保留其他逗号作为分隔符,你可以用Python的re模块(正则表达式)精准匹配目标内容,避免像text.replace(',','.')那样替换所有逗号。以下分几种场景给出具体实现:

场景1:替换所有“数字+逗号”的组合

如果只要逗号前是数字就替换成小数点,用这段代码:

import re

text = "Arun,Mishra,108,23,34,45,56,Mumbai"
processed_text = re.sub(r'(\d),', r'\1.', text)
print(processed_text)

输出:Arun,Mishra,108.23.34.45.56,Mumbai

场景2:仅替换“数字+逗号+数字”的中间逗号

如果只把连接两个数字的逗号换成小数点,保留其他逗号,用:

import re

text = "Arun,Mishra,108,23,34,45,56,Mumbai"
processed_text = re.sub(r'(\d),(\d)', r'\1.\2', text)
print(processed_text)

输出:Arun,Mishra,108.23,34.45.56,Mumbai

场景3:匹配示例的精准替换(整数+逗号+两位小数)

如果你的需求是仅把“整数+逗号+两位数字”结构里的逗号换成小数点(完全匹配示例输出),用:

import re

text = "Arun,Mishra,108,23,34,45,56,Mumbai"
processed_text = re.sub(r'(\d+),(\d{2})', r'\1.\2', text)
print(processed_text)

输出:Arun,Mishra,108.23,34,45,56,Mumbai

场景4:固定位置字段合并(针对特定CSV结构)

如果是CSV文本中某两个固定位置的数字字段被错误拆分,需要合并并替换逗号,用字符串拆分重组的方式:

text = "Arun,Mishra,108,23,34,45,56,Mumbai"
fields = text.split(',')
# 合并第3、4个字段(索引2和3)
fields[2] = f"{fields[2]}.{fields[3]}"
del fields[3]
processed_text = ','.join(fields)
print(processed_text)

输出:Arun,Mishra,108.23,34,45,56,Mumbai

内容的提问来源于stack exchange,提问作者Aniket

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 12:26:00