How to convert string values to integer values while reading a CSV file?
Question: When opening a CSV file, the column of integers is being converted to a string
value ('1', '23', etc.). What's the best way to loop through to convert these
back to integers?

    
    
    import csv
    
    with open('C:/Python27/testweight.csv', 'rb') as f:
        reader = csv.reader(f)
        rows = [row for row in reader if row[1] > 's']
    
    for row in rows:
        print row
    

CSV file below:

    
    
    Account Value
    ABC      6
    DEF      3
    GHI      4
    JKL      7
    


Answer: I think this does what you want:

    
    
    import csv
    
    with open('C:/Python27/testweight.csv', 'rb') as f:
        reader = csv.reader(f, delimiter='\t')
        header = next(reader)
        rows = [header] + [[row[0], int(row[1])] for row in reader]
    
    for row in rows:
        print row
    

Output:

    
    
    ['Account', 'Value']
    ['ABC', 6]
    ['DEF', 3]
    ['GHI', 4]
    ['JKL', 7]
    

