试图了解python csv .next()
发布时间:2020-12-16 23:27:03 所属栏目:Python 来源:网络整理
导读:我有以下代码是教程的一部分 import csv as csvimport numpy as npcsv_file_object = csv.reader(open("train.csv",'rb'))header = csv_file_object.next()data = []for row in csv_file_object: data.append(row)data = np.array(data) 代码的工作原理是应
我有以下代码是教程的一部分
import csv as csv import numpy as np csv_file_object = csv.reader(open("train.csv",'rb')) header = csv_file_object.next() data = [] for row in csv_file_object: data.append(row) data = np.array(data) 代码的工作原理是应该的,但我不清楚为什么在变量头文件中调用.next()可以工作.是不是csv_file_object仍然是整个文件?当csv_file_object中的行被调用时,程序知道如何跳过标题行,因为它不会出现变量头被定义后被引用? 解决方法
作为调用next()的结果,标题行被“跳过”.这就是迭代器的工作原理.
当循环遍历迭代器时,它的next()方法每次被调用.每个调用使迭代器进行.当for循环开始时,迭代器已经在第二行,它从那里开始. 这是the documentation在next()方法(here’s another piece). 重要的是,csv.reader对象是迭代器,就像open()返回的文件对象一样.您可以对它们进行迭代,但是在任何给定的时刻它们都不包含所有行(或任何行). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- python – 关闭文件对话框后Tkinter窗口未关闭
- 如何以列形式保存csv中的dict,其中第一行是键,下
- Python的随机模块是否可以替代numpy.random.expo
- python 并发编程 socket 服务端 客户端 阻塞io行
- python – 同时将nginx设置为apache和gunicorn的
- python – AttributeError:’numpy.ndarray’对
- python – 两个(多个)字段上的Django Haystack自
- python网络编程、套接字、HTTP协议
- 从零基础开始教你爬取全网妹子图!难道你就不想在
- python爬虫 Pyppeteer使用方法解析
热点阅读