从没有dict的对象访问python成员

时间:2015-05-29 16:52:58

标签: python arrays dictionary

这是我目前遇到一些问题的一小部分应用程序。

import csv
with open('eggs.csv', 'rb') as csvfile:
     reader = csv.DictReader(csvfile)
     for row in reader:
         print(row['first_name'], row['cat'])
         print(row[1])

应用程序部分运行良好,没有任何问题,但我想访问' row'中的每个值。通过第i个元素或通过数值。

然而,这似乎并没有按预期发挥作用。

我是否应该采用特定方式来访问成员项,而无需直接调用其列名。

感谢帮助和澄清。

1 个答案:

答案 0 :(得分:4)

csv模块为您提供了两种从文件的每一行访问数据的广泛方式:

  1. 按索引,使用reader;或
  2. 按键,使用DictReader
  3. 但请注意,DictReader实例具有fieldnames属性,“一个序列,其元素按顺序与输入数据的字段相关联”,所以要从index转换为key,你可以使用:

    row[reader.fieldnames[1]]