我对python很新。我正在寻找获得csv列表中第一列长度的最佳方法。我的试用版总是以行的长度或字段中字符串项的长度结束。但我只想找到一种方法来获得第一列的长度。
import csv
with open('data.csv', 'rb') as f:
reader = csv.reader(f)
reader.next()
for row in reader:
print map(len, row)
答案 0 :(得分:2)
使用zip
函数从列中获取可迭代对象:
import csv
with open('data.csv', 'rb') as f:
reader = csv.reader(f)
first_col_len = len(next(zip(*reader)))
注意:在python 2.X zip
中返回一个列表,这样您就可以使用索引来获取第一列:
first_col_len = len(zip(*reader)[0])
或者作为一种更优化的方法,您可以使用itertools.izip()
来获取迭代器结果,然后只使用next()
。