44import csv
55import gzip
66
7- def parse_csv (source , select = None , types = None , has_headers = True , delimiter = ',' , silence_errors = False ):
7+ def parse_csv (source , select = None , types = None , has_headers = True , delimiter = ',' , silence_errors = True ):
88 '''
99 Parse an iterable source into a list of records.
1010 Returns a list of dictionaries if has_headers is True, otherwise returns a list of tuples.
@@ -37,7 +37,7 @@ def parse_csv(source, select=None, types=None, has_headers=True, delimiter=',',
3737 for rownum , row in enumerate (rows , start = start ):
3838
3939 if not row : # Skip rows with no data
40- print (f'Row { rownum } : Empty row' )
40+ # print(f'Row {rownum}: Empty row')
4141 continue
4242 try :
4343 # Filter the row if specific columns were selected
@@ -47,7 +47,7 @@ def parse_csv(source, select=None, types=None, has_headers=True, delimiter=',',
4747 # Convert types if a list of types is provided
4848 if types :
4949 row = [func (val ) for func , val in zip (types , row ) ]
50- print (f'Row { rownum } : Converted row: { row } ' )
50+ # print(f'Row {rownum}: Converted row: {row}')
5151
5252 except ValueError as e :
5353 if not silence_errors :
@@ -66,10 +66,10 @@ def parse_csv(source, select=None, types=None, has_headers=True, delimiter=',',
6666
6767
6868
69- with open ('.\\ Data\\ missing.csv' ) as f :
70- d = parse_csv (f , types = [str , int , float ])
69+ # with open('.\\Data\\missing.csv') as f:
70+ # d = parse_csv(f, types=[str, int, float])
7171
72- print (d )
72+ # print(d)
7373
7474
7575
0 commit comments