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

如何将CSV文件中含逗号的Col3列数值读取为整数?

解决CSV带千分位逗号的列转整数问题

我完全懂你的困扰——这种带千分位分隔符的数值确实会让直接转换整数失败,而且不能修改源文件的话,就得在读取环节动手处理。下面给你几个实用的解决方案,都不用改动原CSV文件:

方案一:手动清除逗号(基础易用版)

如果用Python内置的csv模块读取,你可以在拿到每一行的Col3值后,先把逗号去掉再转成整数:

import csv

result_tuple = ()

with open('你的文件.csv', 'r', newline='') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        # 移除字符串里的逗号,再转换为整数
        cleaned_value = int(row['Col3'].replace(',', ''))
        result_tuple += (cleaned_value,)

print(result_tuple)

方案二:用locale模块解析(适配通用千分位格式)

如果你的CSV数值格式和系统区域设置匹配(比如英文体系的千分位逗号),用locale模块会更灵活,能兼容更多数值格式:

import csv
import locale

# 设置区域为英文(适配千分位逗号规则)
# Windows系统可以换成'English_US',Linux/macOS用'en_US.UTF-8'即可
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')

result_tuple = ()

with open('你的文件.csv', 'r', newline='') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        # 用locale的方法直接解析带千分位的字符串
        parsed_value = locale.atoi(row['Col3'])
        result_tuple += (parsed_value,)

print(result_tuple)

方案三:用pandas处理(适合大数据量场景)

如果你的数据量较大,用pandas会更高效,它自带处理千分位数值的参数,一步就能完成解析:

import pandas as pd

# 读取时指定thousands参数为逗号,自动将Col3解析为数值类型
df = pd.read_csv('你的文件.csv', thousands=',')
# 将Col3列转为整数后再转成tuple
result_tuple = tuple(df['Col3'].astype(int))

print(result_tuple)

你可以根据自己的代码环境和数据规模,选最适合的方案来解决问题~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:02:57