Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于在python中导入导出的csv联系人的解析器_Python_Gmail_Hotmail_Yahoo Mail - Fatal编程技术网

用于在python中导入导出的csv联系人的解析器

用于在python中导入导出的csv联系人的解析器,python,gmail,hotmail,yahoo-mail,Python,Gmail,Hotmail,Yahoo Mail,这是一个略带泛化的问题,但是否有人知道python实现或模块可以接收从google mail、hotmail、yahoo mail导出的csv文件,并返回一个带有名称(名字、第二个名字)和电子邮件地址的数组或字典 我知道如何读取csv文件,这不是问题所在,我更感兴趣的是可靠地解析分隔的输出。我已经导出了google.csv,并且有很多复制 我感兴趣的是csv文件的布局结构,而不是它们的读取方式。有一个内置模块csv 它支持分隔内容和转义内容 要转换为dict,请执行以下操作: import cs

这是一个略带泛化的问题,但是否有人知道python实现或模块可以接收从google mail、hotmail、yahoo mail导出的csv文件,并返回一个带有名称(名字、第二个名字)和电子邮件地址的数组或字典

我知道如何读取csv文件,这不是问题所在,我更感兴趣的是可靠地解析分隔的输出。我已经导出了google.csv,并且有很多复制


我感兴趣的是csv文件的布局结构,而不是它们的读取方式。有一个内置模块
csv

它支持分隔内容和转义内容

要转换为dict,请执行以下操作:

import csv
import StringIO
csv_txt = """fname,lname,phone,fax,notes
d,a,555,556,hollywood
c,b,666,667,beast"""

content = csv.reader( StringIO.StringIO(csv_txt))
headings = content.next()
print [dict((headings[col], row[col]) for col in xrange(len(row))) 
       for row in content]
结果:

[{'lname': 'a', 'phone': '555', 'fax': '556', 'notes': 'hollywood', 'fname': 'd'},
 {'lname': 'b', 'phone': '666', 'fax': '667', 'notes': 'beast', 'fname': 'c'}]

谢谢你的回答,但是如果你读了原始问题,那不是我的问题所在。我要说的是“导入csv”的数组生成输出。我再次得到了这一部分,我更感兴趣的是google.csv中的电子邮件地址位于何处(以整数索引)。我下载的电子邮件地址具有高度的复制性,多次使用相同的电子邮件地址,或者使用不同电子邮件地址的相同名称。这就是csv文件的排列方式,对于google、hotmail或yahoo mail来说就是一个很好的例子
[{'lname': 'a', 'phone': '555', 'fax': '556', 'notes': 'hollywood', 'fname': 'd'},
 {'lname': 'b', 'phone': '666', 'fax': '667', 'notes': 'beast', 'fname': 'c'}]