Consider a large list of named items (first line) returned from a large csv file (80 MB) with possible interrupted spacing
name_line = [\'a\',,\'b\',,\'c\'
Try a generator expression,
data_line = (data_line[i] for i in good_cols)
Also read here about Generator Expressions vs. List Comprehension
as the top answer tells you: 'Basically, use a generator expression if all you're doing is iterating once'.
So you should benefit from this.