csv.reader の第一引数はファイル以外も可、csv.DictReader も同じく

https://docs.python.org/ja/3/library/csv.html#csv.reader
> イテレータ プロトコルをサポートし、 __next__() メソッドが呼ばれた際に常に文字列を返すような任意のオブジェクトにすることができます

with open("a.csv", newline="") as f:
    reader = csv.DictReader(f.readlines())