python fieldnames,csvreader.fieldnames无法在python中识别为csv阅读器对象的属性
我正在尝试使用CSV模块提取Python中CSV文件的标题。
CSV文件非常平坦,看起来像:
This, That, The Other
1, 2, 3
我正在执行以下操作:
读取CSV文件并使其成为读者对象
将阅读器的迭代器推到下一行,以强制其至少访问第一行(来自csv模块文档:"如果在创建对象时未作为参数传递,则此属性将在首次访问或第一次记录时初始化从文件中读取。")
将.fieldnames属性分配给变量并打印
这是一段代码说明:
datafile = open(fname,"rb")
reader = csv.reader(datafile) #use csv module to parse in the header
reader.next() # read next line so header will be accessed
rfd_header = reader.fieldnames
print"header:
"
print rfd_header
这会导致错误:
AttributeError: '_csv.reader' object has no attribute 'fieldnames'
听起来好像没有.fieldnames属性,但是在Python 2.6.6的文档中(我使用的是相同版本的python)
我将不胜感激这个谜。如果还有另一种提取标头的方法,那就太棒了!
谢谢。
如果您确实要使用csv.reader而不是csv.DictReader,则只需替换
reader.next() # read next line so header will be accessed
rfd_header = reader.fieldnames
通过
rfd_header = reader.next()
谢谢! 那真的很好。 我可以理解为什么DictReader可能是更好的使用方法,但是对于我的应用程序,我需要一个列表。
这对我没有用。 然后得到_csv.reader object has no attribute next(Python 3)
尝试使用csv.DictReader而不是csv.reader。 该文档也这么说:
DictReader对象具有以下公共属性:
csvreader.fieldnames-如果在创建对象时未作为参数传递,则在首次访问时或从文件中读取第一条记录时会初始化此属性。
http://docs.python.org/library/csv.html
您说得很对,我一定对文档有误读:P我会使用DictReader,但是碰巧我需要一个列表。 谢谢你的小费!
嗯,"此属性在首次访问时初始化"是什么意思? 对我来说,这听起来像是该类也会在需要时对字段名进行延迟初始化。
如果您需要列表中的结果,则可以采取以下措施:
rfd_header = reader.next()
这应该将第一行(标题/字段)存储到变量" rfd_header"
然后,您可以遍历变量的值并放入列表中
headerList = []
for item in rfd_header:
headerList.append(item)
然后您可以打印结果
print headerList
python fieldnames,csvreader.fieldnames无法在python中识别为csv阅读器对象的属性相关推荐
- OpenCV中图像的BGR格式 Img对象的属性说明
1. 图像的BGR格式说明 OpenCV中图像读入的数据格式是numpy的ndarray数据格式.是BGR格式,取值范围是[0,255]. 如下图所示,分为三个维度: 第一维度:Height 高度,对 ...
- JavaScript中的高级特性及特别对象、属性和方法
一,编写构造函数 可以使用 new 运算符结合像 Object().Date() 和 Function() 这样的预定义的构造函数来创建对象并对其初始化.面向对象的编程其强有力的特征是定义自定义 ...
- safari阅读模式_如何在Safari中使用和调整阅读器模式
safari阅读模式 The web can be an ugly place. Sites with useful information can also be cluttered with si ...
- python获取方法的装饰方法_python中的方法和装饰器
[TOC] 装饰器 python中的装饰器(decorator)是在pep 318中被首次引入,它的本质是一个函数这个函数是接受其它参数为参数,并且用一个新的,修改后的函数作为替换,最常见的装饰器就c ...
- Python笔记_23_正则相关函数_类中的方法_装饰器_异常
文章目录 正则相关函数 search 和 match split 切割 sub 替换 finditer 匹配字符串中相应内容,返回迭代器 compile 指定一个统一的匹配规则 正则表达式的修饰符 类 ...
- python的内置函数string_Python错误:内置函数或方法对象没有属性“StringIO”
我只想下载一张图片.然后上传到Amazon S3.但它不起作用.在'builtin_function_or_method' object has no attribute 'StringIO' Tra ...
- session中存放一个对象,只修改对象的属性,不将修改后的对象存放session,发现session中存放的对象也发生改变!
标题简单描述:先将一个对象放入session,只对对象属性值进行修改,但不将修改后的对象存放session中,发现session中存放的对象属性值也相对应的改变. Person person=new ...
- Java使用POI操作XWPFDocument中的XWPFParagraph(段落)对象的属性略解
创建文本对象 XWPFDocument docxDocument = new XWPFDocument(); 创建段落对象 XWPFParagraph paragraphX = docxDocumen ...
- poi处理word内容的公式_Java 使用 POI 操作 XWPFDocument 中的 XWPFParagraph(段落)对象的属性略解 Wor - 链滴...
我用的是office word 2016版 创建文本对象 XWPFDocument docxDocument = new XWPFDocument(); 创建段落对象 XWPFParagraph pa ...
最新文章
- 哈希表(等概率下)平均查找长度(转)
- jquery下拉分页
- 聚焦国际农民丰收节贸易会-张桃林:农业谋定开放新格局
- distinct 排序_自己造一个排序算法
- 活动:北京Xamarin分享会第8期(2017年11月11日)
- LeetCode 393. UTF-8 编码验证(位运算)
- ipython 模块搜索路径
- Unity4.3 2D新特性
- 32.go defer
- 转:运行yum报错Error: Cannot retrieve metalink for reposit
- vue上传图片时,console.log()图片信息遇到的坑
- 阿里云云计算 37 PolarDB MySQL的连接
- 三级等保 服务器设置密码策略 centos
- 第一次发博客,随便说说
- 知乎周源微信_每周源代码3
- 45个免费LOGO在线制作网站
- Java如何生成彩色二维码(利用zxing包)
- 金融机构数字化转型对央企建筑公司数字化转型的启示
- 9款别出心裁的jQuery插件
- Win10台式电脑网线正常但连不上网。