这是什么意思? stuff = [i.split()for i in row]

时间:2014-06-05 20:12:02

标签: python csv list-comprehension python-3.4

这在这种背景下意味着什么?

stuff = [i.split()for i in row]

import csv
with open('AB.csv', 'r') as ABfile:
    AB=csv.reader(ABfile,csv.excel)
    for row in AB:
        print(row)
        stuff = [i.split() for i in row]
        print(stuff)

这是输出

['qqq', 'qqq', 'sd3 3ds', '12/12/2012']
[['qqq'], ['qqq'], ['sd3', '3ds'], ['12/12/2012']]

1 个答案:

答案 0 :(得分:2)

这是列表理解。它正在构建与

相同的列表
stuff = []
for i in row:
   stuff.append(i.split())

它只是一种方便和pythonic的方式来建立一个列表。

split方法将字符串拆分为空白列表,例如:

>>> 'qqq'.split()
['qqq']
>>> 'sd3 3ds'.split()
['sd3', '3ds']

对于row中的每个元素,调用split并将结果列表添加到stuff。这就是为什么你最终得到stuff列表的原因。