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

如何在Python中将存储素数的CSV文件转换为可索引的整数列表

素数CSV文件转整数列表解决方案

原有代码问题分析

  • CSV分隔符配置错误:你设置了delimiter=' '(空格作为分隔符),但你的素数文件实际以英文逗号,为分隔符,导致整行素数被识别为单个字符串元素
  • 缺少类型转换:读取得到的元素均为字符串格式,未转换为整数
  • 列表结构错误:直接将csv.reader返回的行列表append到输出列表,导致嵌套结构

可用修改方案

方案1:基于原有csv库逻辑修改

import sys
import csv

csv.field_size_limit(sys.maxsize)

output = []
with open('primes1.csv', 'r') as csvfile:
    # 替换分隔符为英文逗号
    reader = csv.reader(csvfile, delimiter=',')
    for row in reader:
        # 遍历行内每个元素,转换为整数后存入输出列表
        output.extend([int(prime_str.strip()) for prime_str in row if prime_str.strip()])

方案2:轻量实现(更适合1000万级素数的高性能转换)

你的文件仅为纯逗号分隔的素数,无需引入csv库即可实现更高效率的转换:

with open('primes1.csv', 'r') as f:
    output = [int(prime.strip()) for prime in f.read().split(',') if prime.strip()]

验证方法

Python列表下标从0开始计数,你要获取第三个值为5的素数,调用output[2]即可得到正确结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 08:36:03