Python Forum
Help iterating through DictReader loaded from csv
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help iterating through DictReader loaded from csv
#2
This is much easier to deal with as a plain list.
Here's the two methods compared:
import csv

def read_file1(filename):
    with open(filename, 'r') as f:
    # with open(r'C:\Users\delliott\Desktop\pythoncsv\Q3\eat.csv', 'rt') as f:
        reader = csv.DictReader(f, delimiter=',')
        for row in reader:
            print(row)

def read_file2(filename):
    with open(filename, 'r') as f:
        reader = csv.reader(f)
        for row in reader:
            print(row)

if __name__ == '__main__':
    print('\n\nUsing read_file1')
    read_file1('eat.csv')
    print('\n\nUsing read_file2')
    read_file2('eat.csv')
results:
Output:
Using read_file1 OrderedDict([('person_id', '90'), ('type', 'check_in'), ('arrive_date', '2/15/2018'), ('leave_date', '2/15/2018')]) OrderedDict([('person_id', '90'), ('type', 'brunch'), ('arrive_date', '2/15/2018'), ('leave_date', '2/15/2018')]) OrderedDict([('person_id', '90'), ('type', 'lunch '), ('arrive_date', '2/15/2018'), ('leave_date', '2/15/2018')]) OrderedDict([('person_id', '90'), ('type', 'cancelled'), ('arrive_date', '2/16/2018'), ('leave_date', '2/16/2018')]) OrderedDict([('person_id', '90'), ('type', 'breakfast '), ('arrive_date', '2/15/2018'), ('leave_date', '2/22/2018')]) OrderedDict([('person_id', '80'), ('type', ''), ('arrive_date', ''), ('leave_date', '')]) OrderedDict([('person_id', '40'), ('type', 'check_in'), ('arrive_date', '2/15/2018'), ('leave_date', '2/15/2018')]) OrderedDict([('person_id', '50'), ('type', 'check_in'), ('arrive_date', '2/15/2018'), ('leave_date', '3/1/2018')]) OrderedDict([('person_id', '50'), ('type', 'breakfast '), ('arrive_date', '2/15/2018'), ('leave_date', '2/26/2018')]) OrderedDict([('person_id', '50'), ('type', 'lunch '), ('arrive_date', '2/15/2018'), ('leave_date', '3/1/2018')]) OrderedDict([('person_id', '60'), ('type', 'check_in'), ('arrive_date', '2/15/2018'), ('leave_date', '2/15/2018')]) OrderedDict([('person_id', '60'), ('type', 'dinner'), ('arrive_date', '2/15/2018'), ('leave_date', '2/15/2018')]) OrderedDict([('person_id', '60'), ('type', 'lunch '), ('arrive_date', '2/21/2018'), ('leave_date', '2/21/2018')]) OrderedDict([('person_id', '60'), ('type', 'breakfast '), ('arrive_date', '3/15/2018'), ('leave_date', '3/15/2018')]) OrderedDict([('person_id', '35'), ('type', 'check_in'), ('arrive_date', '3/15/2018'), ('leave_date', '3/15/2018')]) OrderedDict([('person_id', '35'), ('type', 'cancelled'), ('arrive_date', '3/20/2018'), ('leave_date', '3/20/2018')]) OrderedDict([('person_id', '35'), ('type', 'cancelled'), ('arrive_date', '3/21/2018'), ('leave_date', '3/21/2018')]) Using read_file2 ['person_id', 'type', 'arrive_date', 'leave_date'] ['90', 'check_in', '2/15/2018', '2/15/2018'] ['90', 'brunch', '2/15/2018', '2/15/2018'] ['90', 'lunch ', '2/15/2018', '2/15/2018'] ['90', 'cancelled', '2/16/2018', '2/16/2018'] ['90', 'breakfast ', '2/15/2018', '2/22/2018'] ['80', '', '', ''] ['40', 'check_in', '2/15/2018', '2/15/2018'] ['50', 'check_in', '2/15/2018', '3/1/2018'] ['50', 'breakfast ', '2/15/2018', '2/26/2018'] ['50', 'lunch ', '2/15/2018', '3/1/2018'] ['60', 'check_in', '2/15/2018', '2/15/2018'] ['60', 'dinner', '2/15/2018', '2/15/2018'] ['60', 'lunch ', '2/21/2018', '2/21/2018'] ['60', 'breakfast ', '3/15/2018', '3/15/2018'] ['35', 'check_in', '3/15/2018', '3/15/2018'] ['35', 'cancelled', '3/20/2018', '3/20/2018'] ['35', 'cancelled', '3/21/2018', '3/21/2018']
Reply


Messages In This Thread
RE: Help iterating through DictReader loaded from csv - by Larz60+ - May-01-2018, 06:52 PM

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020