Hello, > A list comprehension will work for this. If data is a list of triples of > (year, month, volume) then this will give you a list of the 1997 triples: > > data1997 = [ item for item in data if item[0]==1997 ]
I tried your code out (see below). Here is the output: [] [] [] [] [] [1990, 0, 1, -18.0] [1990, 0, 2, -0.5] [1990, 0, 3, -14.0] [1990, 0, 4, -21.0] How do I avoid the []? What whould be the easiest way to save this list (without the "[]") into a file and append a newline after each row? Thanks for your help in advance, Timmie Here's the code: #!/usr/bin/env python # currently used modules import csv # SOME VARIABLES #~ stattion_name = 'Sosan' input_file_name = '../data/filter_test_data.csv' output_file_name = '../data/filter_test_data_result.csv' # prepare files input_file = open(input_file_name, 'r') output_file = open(output_file_name ,'w') header = u"Year, Month, Day, Hour_of_day [h], values, \n" input_data = csv.reader(input_file, delimiter=';') #~ skip the first rows line1 = input_file.readline() line2 = input_file.readline() #~ write the header output_file.write(header.encode('utf-8')) counter = 0 value_col = 6 for line in input_data: #~ print line #~ year month day temp_3hr year = int(line[1]) month = int(line[2])-1 day = int(line[3]) value = float(line[6])*0.5 compact_list = [year, month, day, value] res_rows = [ item for item in compact_list if compact_list[0] == 1990 ] print res_rows input_file.close() output_file.close() _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor