Можно конечно, python`а тоже будет достаточно, однако я бы советовал использовать бд - даже самые простые СУБД из коробки поддерживает большинство нужных вам функций. Остальные же реализовать тоже куда проще. В самом простом случае - можно использовать sqlite. Python поддерживает ее из коробки.
На почитать:
Учебник по базовому синтаксису sql
доки по sqlite
основы проектирования
Нормализация бд
Работа python c sqlite