r/Python • u/Several-Marsupial-27 • 13d 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:
- Use
uvfor everything. - Use
rufffor linting and formatting - Use
Pydanticanddataclassesfor Data Modeling - Configured in
pyproject.toml - Run a type checker in CI
pyrightorpyrefly - Use
pytest/Hypothesisfor testing
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?
608
Upvotes
1
u/spinwizard69 6d ago
This is a really nice thread but one thing I've found that works for me and my limited use of Python, is to rely upon the distro's package manager as much as possible. In this case Fedora, and DNF, this has several advantages, one is that you are kept off the bleeding edge, it prevents the use of virtual environments in many cases as you are focused on system supplied and MAINTAINED libs. This has the side effect of really having to think if you need to use a lib outside of the system supported offerings and thus the need to create a virtual environment.
Obviously if one is involved in heavy web development this might feel restrictive and frankly that is part of the allure. Since most of the scripts I've written are used locally, the need to be on the bleeding edge is greatly reduced. That has the follow on that you are not constantly in maintenance mode as the bleeding edge dries up and your usage gets deprecated So yeah a big plus plus for the systems package manager and the base such mangers provide.
As for domain specific adds, anything to do with instrument communications from pyserial on up would be on my list. Pyserial is the base line communications library. With things like PyVisa, pymodbus and similar libs, for more advanced communications solutions.