python csv.reader_python中csv模块读取reader只能读取一次

各位好,请问python读取csv文件时只能读取一次是为什么

现在有一个csv文件 大概是这个样子

f38f3125aa7910a44fd3a4bbdd2aaaab.png

现在对ID和length进行读取

import csv

with open('ccc.csv','r')as file:

reader = csv.reader(file)

ids = [low[0] for low in reader]

value = [low[1] for low in reader]

print ('ids',ids)

print ('value',value)

结果第value列表为空

ids ['ID', 'ID=cds0', 'ID=cds1', 'ID=cds2', 'ID=cds3', 'ID=cds4', 'ID=cds5', 'ID=cds6', 'ID=cds7', 'ID=cds8', 'ID=cds9', 'ID=cds10', 'ID=cds11', 'ID=cds12', 'ID=cds13', 'ID=cds14', 'ID=cds15', 'ID=cds16', 'ID=cds17', 'ID=cds18', 'ID=cds19', 'ID=cds20', 'ID=cds21', 'ID=cds22', 'ID=cds23', 'ID=cds24', 'ID=cds25', 'ID=cds26', 'ID=cds27', 'ID=cds28', 'ID=cds29', 'ID=cds30']

value []

只能写 读取所有行数形成列表才能够赋给value的值

import csv

id_list = []

value_list = []

with open('ccc.csv','r')as file:

reader = csv.reader(file)

lows = [low for low in reader]

ids = [low[0] for low in lows]

value = [low[1] for low in lows]

print ('ids',ids)

print ('value',value)

才可以正常打印

ids ['ID', 'ID=cds0', 'ID=cds1', 'ID=cds2', 'ID=cds3', 'ID=cds4', 'ID=cds5', 'ID=cds6', 'ID=cds7', 'ID=cds8', 'ID=cds9', 'ID=cds10', 'ID=cds11', 'ID=cds12', 'ID=cds13', 'ID=cds14', 'ID=cds15', 'ID=cds16', 'ID=cds17', 'ID=cds18', 'ID=cds19', 'ID=cds20', 'ID=cds21', 'ID=cds22', 'ID=cds23', 'ID=cds24', 'ID=cds25', 'ID=cds26', 'ID=cds27', 'ID=cds28', 'ID=cds29', 'ID=cds30']

value ['length', '768', '4296', '1560', '1359', '1170', '1092', '468', '894', '696', '1980', '1605', '1548', '1389', '414', '1467', '1428', '1680', '999', '2151', '300', '225', '372', '462', '1014', '1212', '774', '1896', '2571', '1011', '582', '1635']

很奇怪,按理说如果不可以的话全部都不可以了。为什么呢?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值