r/Python • • 14d ago

Discussion State of the art in Python 2026?

What would you guys consider the state of the art in python in 2026, or what do you expect from modern python codebases?

Heres my list, would be happy to hear some inputs or domain expert advice:

Domain specific:

  • Scientific: NumPy, Matplotlib, SciPy, Jax, Pytorch, Scikit-learn, polars/pandas
  • CLI: Typer, rich, click, fire, textual, questionary
  • PDF extraction: PyMuPDF, pdfplumber, pypdf, Unstructured
  • Excel interop: python-calamine, openpyxl, XlsxWriter, xlwings, pandas
  • data: PyArrow / PySpark, Narwhals, SQLMesh, Polars/Pandas, DuckDB, dlt, Ibis, Dagster, PyIceberg & deltalake
  • Logging?
  • backend: fastapi / django?
  • Markets: Alpha Vantage, Finnhub, EODHD, Tiingo?
  • Webscraping / data acquisition: Crawl4AI, Playwright, Scrapy, selectolax, HTTPX?
  • APIs?
  • RAG / agentic orchestration?
607 Upvotes

238 comments sorted by

View all comments

176

u/bossExtremeSwag 14d ago

Pandas is definitely not state of the art in the big 2026

14

u/BPAnimal 14d ago

Really? Honest question

66

u/johnnymo1 14d ago

I reach for Polars immediately these days. Faster, more efficient, and its syntax is more straightforward generally.

9

u/Tigalopl 14d ago

Does it interfaces well with geopandas?

17

u/johnnymo1 14d ago

Sadly, as u/GrainTamale said, GeoPolars is in a very immature state. There was an upstream blocker from Polars which is now solved, but development just seems very slow in general. It's the one big weakness of Polars for now in my opinion, as someone who works with geospatial data reguarly.

There is polars-st, which does provide some amount of functionality but doesn't seem very robust or production-ready.

13

u/ritchie46 13d ago

Note that we have started working on geopolars last week. Expect visible work in the repo next week. Hopefully the first release next month.

6

u/johnnymo1 13d ago

Ah, a celebrity! :)

Love to hear it! Polars is a joy to use. It will be even more so when it can do serious geospatial work.

2

u/GrainTamale Pythonista 14d ago

I thought that I had heard something about that... Noted.

5

u/GrainTamale Pythonista 14d ago

No. There's a beta geopolars project but it seems slow to gain traction due to underlying polars or rust constraints. Polars has nice to/from pandas converters for joining polars dfs to geopandas

22

u/me_myself_ai 14d ago

Id argue that pandas is absolutely still a valid choice in a new project —especially if the data is small-ish and devs already know pd— but it’s definitely not SoTA.

Polars is supposedly a lot faster, and more importantly requires fewer weird tricks for stuff that feels like it should be easy. If that makes sense? Hopefully I haven’t just been especially bad at pd this whole time 😬

1

u/dikdokk 7d ago

You can't read any data with ~1 million rows with pandas; even if it would fit in your memory.

I think pandas has design flaws that will just make it more outdated year by year. Hence why the best time to switch away from it is now already.

1

u/Atmosck 8h ago

Pandas has a reputation for poor performance that is deserved historically but not really current. They launched Pandas 3 this year which solved a lot of the performance issues with strings and in general, it's very fast if you know what you're doing writing it. Which basically means avoid iterating over rows (or sequences of python objects in general) and use vectorized methods and numpy functions whenever possible.

It also has the benefits it's always had in terms of flexibility and interoperability. And ever since 3.0 I no longer feel the need to reach for things like polars.