字典从python的csv文件中读取3个值
问题描述:
我想创建一个简单的字典,它从csv文件获取3个值。 我的python代码可以从csv文件轻松获得2个值。但我无法显示第三个值。字典从python的csv文件中读取3个值
继承人我的csv文件:
ERRORCODE,EVENTKEY,COUNT
109,playback_error,2
210,live_channels_metadata_request_failed,1
106,playback_error,19
180,search_error,5
2086,vod_catalog_metadata_request_failed,1
-1001,live_channels_metadata_request_failed,1
380,playback_error,1
400,search_error,2
N/A,crash,218
3803,playback_error,28
JX-0002,search_error,104
385,playback_error,141
386,playback_error,1
387,playback_error,29
0,tbr_error,31
2001,qp_library_failed_to_start,42
2002,qp_library_failed_to_start,147
1512,playback_error,19
2004,live_channels_metadata_request_failed,2
2006,qp_library_failed_to_start,1
2006,live_channels_metadata_request_failed,5
-1001,search_error,2
-1003,search_error,8
BLL-10011,parental_controls_error,42
1517,playback_error,47
,,81
BL-10013,parental_controls_error,3
-1005,search_error,3
BL-10014,parental_controls_error,2
3320,qp_library_failed_reauthentication,2
3710,playback_error,168
-1200,playback_error,2
-1,playback_error,2
3301,playback_error,1311
3304,playback_error,122
3305,playback_error,1
这里是我的Python字典:
#!/usr/bin/python
import csv
with open('csv_err2.log', mode='r') as infile:
reader = csv.reader(infile)
mydict = dict((rows[0],rows[1]) for rows in reader)
print(mydict)
我只能够得到以下输出中:ERRORCODE,EVENTKEY:
{ '3904': 'playback_error', '3808': 'playback_error', '3902': 'qp_library_failed_to_start'..... }
但我错过值COUNT .. :( 如何显示我的最后一个值COUNT在该词典ÿ?
任何帮助,将不胜感激
答
mydict = dict((rows[0],rows[1:]) for rows in reader)
可能是你正在寻找......真的不知道
+0
谢谢:) 这个作品 – 2015-02-23 16:44:31
+0
好玩过了@Joran Beasley – user2097159 2015-02-23 17:02:39
取代'mydict = ...'和'mydict =字典((行[ 0],[行[1],行[2]])在阅读器中的行)'不是最好的方式,但应该工作。 – user2097159 2015-02-23 16:35:15
那么在你的字典里也用'row [2]'呢?我不确定这里有什么问题。 – 2015-02-23 16:37:44
@ user2097159切片男人切片! – 2015-02-23 16:40:09