2024-06-13 07:02:12 发布
网友
如何从csv中订购信息技术?有什么功能吗?
csv格式:
1 one 2 two
订购信息:
OrderedDict((('1', 'one'), ('2', 'two')))
在Python 3中,CSV模块可以导入CSV文件并将行直接转换为OrderedDict的实例,键的顺序与CSV文件一致。这与Python 2的行为不同,python2将行作为普通dict类型返回。
OrderedDict
import csv from pprint import pprint with open(filename) as fd: for row in csv.DictReader(fd): pprint(row)
Date,Name,Notes 31 May 2019,Robert, 1 June 2019,Silvio,
OrderedDict([('Date', '31 May 2019'), ('Name', 'Robert'), ('Notes', '')]) OrderedDict([('Date', '1 June 2019'), ('Name', 'Silvio'), ('Notes', '')]) ...
我也有同样的问题,简单的方法是子类化和调整csv函数。这是我的工作代码:http://code.activestate.com/recipes/577996-ordered-csv-read-write-with-colum-based-lookup/?in=user-4177968
如果csv有两列,如问题中所述,则可以执行以下操作:
import csv import collections with open('foo.csv','rb') as f: r = csv.reader(f) od = collections.OrderedDict(r)
如果csv文件中的行被格式化为key, value1, value2, value3,则可以执行以下操作:
key, value1, value2, value3
with open('foo.csv','rb') as f: r = csv.reader(f) od = collections.OrderedDict((row[0], row[1:]) for row in r)
在Python 3中,CSV模块可以导入CSV文件并将行直接转换为
OrderedDict
的实例,键的顺序与CSV文件一致。这与Python 2的行为不同,python2将行作为普通dict类型返回。我也有同样的问题,简单的方法是子类化和调整csv函数。这是我的工作代码:http://code.activestate.com/recipes/577996-ordered-csv-read-write-with-colum-based-lookup/?in=user-4177968
如果csv有两列,如问题中所述,则可以执行以下操作:
如果csv文件中的行被格式化为
key, value1, value2, value3
,则可以执行以下操作:相关问题 更多 >
编程相关推荐