【发布时间】:2019-03-20 01:18:30
【问题描述】:
我的学校给了我这个代码和 csv 文件(这里不包括)来“探索”。在探索这个的过程中,我发现了一些我想问的事情。一,我的代码下面是我运行该程序时的打印输出。如果您注意到,在 import 语句之后会出现一个空白 LIST。然而,程序的打印输出似乎是字典格式,带有键值和对值。我仍在尝试找出两者之间的差异。我认为程序显示数据的方式与它正在导入逗号分隔值文件这一事实有关。但我仍处于不完全了解一切如何协同工作以获得最终结果的地步。总而言之,我想了解在这种情况下像字典一样打印出空白列表的方式和原因。
我想问的第二件事是仅打印整个“名称”值列表的正确方法。这实际上适用于任何键,因为如果我只是打印出没有任何限制的“数据”,那将是一个巨大的系统崩溃数据块,它一直试图连续加载 10 分钟。所以我想在循环中加入每个索引点的“名称”值。所以像“print(data[counter]["Name"])”这样的东西,有一个递增的计数器变量,每次打印后都会增加一个索引。但是当我自己尝试这样做时,我无法让它发挥作用。底部的注释代码只是学校放在那里的示例,但这就是我发布的打印输出的结果。
import csv
import re
data = []
with open('customerData.csv') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
data.append(row)
print(data[0])
print(data[1]["Name"])
print(data[2]["Spent Past 30 Days"])
输出:
{'Member Date': '26/2/2012', 'Zip': '61309', 'Purchases Past 30 Days': '2', 'SSN': '544-48-7885', 'Purchases Past 12 Months': '8', 'Spent Past 12 Months': '$6030.52', 'State': 'WV', 'Spent Past 30 Days': '$943.9000000000001', 'Phone': '(581) 372-8004', 'Gender': 'male', 'Name': 'Steve Bryan', 'Email': 's.Bryan@ru.gov', 'Favorite Radio Station': 'WATT', 'Credit Card_Number': '3491xxxxxxx1481', 'Spent Past 6 Months': '$2099.83', 'Credit Card': 'American Express', 'Credit Card Exp': '02/17', 'Purchases Past 6 Months': '3'}
Dr. Adam Taylor
$3797.13
【问题讨论】:
标签: list csv dictionary import