【发布时间】:2017-03-14 00:38:56
【问题描述】:
我从这里下载了一个数据列表:https://catalog.data.gov/dataset/fdic-failed-bank-list
这是一个非常标准的数据集:
Bank Name,City,ST,CERT,Acquiring Institution,Closing Date,Updated Date
Proficio Bank,Cottonwood Heights,UT,35495,Cache Valley Bank,3-Mar-17,8-Mar-17
Seaway Bank and Trust Company,Chicago,IL,19328,State Bank of Texas,27-Jan-17,17-Feb-17
Harvest Community Bank,Pennsville,NJ,34951,First-Citizens Bank & Trust Company,13-Jan-17,17-Feb-17
Allied Bank,Mulberry,AR,91,Today's Bank,23-Sep-16,17-Nov-16
但是,我用来将每一列放入列表的代码比我认为的要冗长得多:
import csv
a = []
b = []
c = []
d = []
e = []
f = []
g = []
with open('banklist.csv', 'rb') as cf:
bl = csv.reader(cf, delimiter=',')
for row in bl:
a.append(row[0])
b.append(row[1])
c.append(row[2])
d.append(row[3])
e.append(row[4])
f.append(row[5])
g.append(row[6])
print a
print b
print c
print d
print e
print f
print g
必须有一种方法可以使这更简单。
【问题讨论】:
-
简单地说:您正在尝试转置它。使用
zip。 -
你想做什么?
-
你可以在一个衬里中完成整个事情:horizontal = (lambda fi: (zip(*[item.split(',') for item in fi.readlines()][:: -1]), fi.close()))(open('banklist.csv', 'rb'))[0]
标签: python list csv row multiple-columns