Pandas DataFrames have an itertuples
method that returns a generator of named tuples. The named tuples have an _asdict()
method. So you can get a generator of rows as dictionaries with:
row_generator = (row._asdict() for row in df.itertuples())
References: