返回

CSV__04--python使用迭代器读取csv文件出现读取结果为空的解决办法

发布时间:2022-12-27 03:55:44 217
# python# 容器# 软件# 软件

1 迭代器的概念

迭代器(iterator)有时又称光标(cursor)是程序设计的软件设计模式,可在容器对象(container,例如链表或数组)上遍访的接口。

2 迭代器的特点

  • 强制性:必须将元素从迭代器中取出后,才能使用元素;
  • 一次性:取出以后该元素就从迭代器中删除,无法二次遍历;
  • 未知性:容器内部元素无法直接定位,只能遍历按序取出。

3 问题解决

迭代器每次使用后会迭代至末尾

当我们再次使用这个迭代器进行for循环读取时得到的结果自然为空

解决方法只需新建一个迭代器即可。

迭代器:IndexError: list index out of range

import csv

#读T1
reader = csv.reader(open('结果1.csv','rt'))
column1 = [row1[0:9] for row1 in reader]
# 写入标题
with open('demo2.csv', 'w', encoding='UTF8', newline='') as f0:
    writer0 = csv.writer(f0)
    # write the header
    writer0.writerow(column1[0])

#读T2
reader2 = csv.reader(open('结果1.csv', 'rt'))
column2 = [row2[0:3]+row2[9:15] for row2 in reader2]

#读T3
reader3 = csv.reader(open('结果1.csv', 'rt'))
column3 = [row3[0:3]+row3[15:21] for row3 in reader3]

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线