Actually it doesn't.
It came naturally, not out of some design, but I guess having better and better typing support everywhere makes it more and more convenient.
I usually would prefer having everything behind the endpoint (such as Pydantic schemas & FastAPI) as simple dicts and lists.
Would you do the same if you were about to make changes in a code base with only dictionaries and lists in it? :)
If you were about to pass on the result from a calculation to somewhere else, a dictionary or list would probably be a good idea. You probably wouldn’t want the entire system be aware of a Pandas specific data type.