1 """@namespace IMP.EMageFit.csv_related
2 Utility functions to handle CSV files.
8 def is_comment(list_values, comment_char="#"):
9 if(len(list_values) == 0
or list_values[0][0] == comment_char):
14 def read_csv(fn, delimiter="|", comment_char="#", max_number=False):
16 Simple reader of csv files that disregards lines with comments
19 reader = csv.reader(f, delimiter=delimiter)
29 rows = [d
for d
in reader if(
not is_comment(d, comment_char))]
37 Reader of csv files that only recovers lines starting with a keyword
40 if(isinstance(fn_or_f, str)):
41 f = open(fn_or_f,
"r")
42 elif(isinstance(fn_or_f, file)):
45 reader = csv.reader(f, delimiter=delimiter)
48 if(
not is_comment(row)
and row[0] == keyword):
51 if(isinstance(fn_or_f, str)):