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

技术问询:如何在CSV文件中将逗号替换为小数点后替换分号为逗号

嘿,看起来你要把这份欧洲格式的CSV(用分号做字段分隔符、逗号做小数位)转换成标准的CSV格式,我整理了几个实用的解决方案,适配不同的场景:

方法1:纯文本替换(最快最直接,适合小文件)

如果你的CSV结构简单,没有嵌套的分隔符(比如引号里的分号/逗号),直接读整个文件做字符串替换就够了,不需要额外依赖:

# 读取原始CSV文件内容
with open("your_input.csv", "r", encoding="utf-8") as input_file:
    raw_content = input_file.read()

# 先把逗号(小数分隔符)换成小数点,再把分号(字段分隔符)换成逗号
processed_content = raw_content.replace(",", ".").replace(";", ",")

# 写入处理后的标准CSV
with open("standard_output.csv", "w", encoding="utf-8") as output_file:
    output_file.write(processed_content)

这个方法的优势是简单粗暴,几行代码搞定,完全不需要处理CSV的结构逻辑,适合你给出的这种格式规整的小文件。

方法2:用Pandas处理(适合后续数据分析)

既然你已经导入了Pandas,那可以利用它的内置参数直接处理格式转换,同时还能得到可直接分析的DataFrame:

import pandas as pd

# 读取欧洲格式CSV:指定分号为字段分隔符,逗号为小数分隔符
df = pd.read_csv("your_input.csv", sep=";", decimal=",")

# 导出为标准CSV:默认用逗号分隔字段,小数点做小数位
df.to_csv("pandas_output.csv", index=False)

这个方法更健壮,即使CSV里有引号包裹的字段(比如包含逗号的文本),Pandas也能正确解析,而且处理完的数据可以直接用来做统计、可视化等操作。

方法3:用CSV模块逐行处理(适合超大文件)

如果你的CSV文件特别大,一次性读入内存会有压力,推荐用Python内置的csv模块逐行处理:

import csv

# 打开输入和输出文件
with open("your_input.csv", "r", encoding="utf-8") as infile, \
     open("csv_module_output.csv", "w", encoding="utf-8", newline="") as outfile:
    
    # 配置原始文件的读取器:分号分隔字段
    reader = csv.reader(infile, delimiter=";", quoting=csv.QUOTE_NONE)
    # 配置输出文件的写入器:逗号分隔字段
    writer = csv.writer(outfile, delimiter=",")
    
    # 逐行处理:替换每个单元格里的逗号为小数点
    for row in reader:
        cleaned_row = [cell.replace(",", ".") if cell else cell for cell in row]
        writer.writerow(cleaned_row)

这个方法的内存占用极低,因为每次只处理一行数据,适合GB级别的超大CSV文件。

处理后的预期结果

按照你的示例内容,处理后应该得到:

2018-03-16: ECarbix Prices/Volumes for Emission Spot Market
Data type(ST),Trading Date,Creation Time
Data type(IL),Index,Unit,Price,Volume
Data type(AL),Number of Lines

ST,2018-03-16,2018-03-19T08:39:48+01:00
IL,Day,EUR/tCO2,10.97,4533000
AL,9

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 11:53:45