DEV Community

Cover image for A Collection Of Python Programming Resources For Beginners
Prahlad Yeri
Prahlad Yeri

Posted on Edited on Originally published at github.com

A Collection Of Python Programming Resources For Beginners

(Originally published on https://github.com/prahladyeri/CuratedLists/)

Python Programming Resources

Official docs and other resources

Libraries

Database Connectivity

Scientific/Statistical

  • scipy - Important python package for mathematicians and statisticians.
  • numpy - A package for scientific computing.
  • matplotlib - A 2d plotting library.
  • pandas - High performance Data Analysis library for Python.
  • nltk - Widely used Python library in the field of Natural Language Processing.

Machine Learning

  • gpt-2 - Neuralnet/AI library, Code from the paper "Language Models are Unsupervised Multitask Learners".
  • scikit-learn - A free software machine learning library for the Python programming language.
  • tensorflow - A free and open-source software library for dataflow and differentiable programming across a range of tasks.

Networking/Scraping

  • requests - A popular library for handling HTTP requests.
  • Twisted - An event driven networking engine written in python. Twisted is to python what System.Net is to C# or java.net package is to Java.
  • Mechanize - A fully-fledged web-scraping framework written in Python.

Spreadsheets/Documents

  • openpyxl - A pure python library to export/import data in Microsoft Excel format.
  • xlrd - A pure python library to read Microsoft Excel 97 (*.xls) format workbooks.
  • python-docx - Python library to write to work with Microsoft Word Documents.
  • markdown - Python library to work with markdown format.
  • Pandoc - Wonderful tool to convert document from one format to another, supports markdown, reST, doc, docx, pdf and a number of other formats.
  • BeautifulSoup - A mind-blowing XML parsing library that is widely used in web-scraping scripts and applications in python.
  • lxml - Library to process xml/html with python.

Build and DevOps

  • Twine - Utility for interacting with PyPi packaging system.
  • PyTest - Perhaps the De-facto testing module in python world.
  • sphinx - The standard documentation tool for python.

Others

  • Pelican - A static site generator that supports markdown and reST syntax. Written in python.
  • pygments - A syntax highlighting package written in Python.
  • pygame - A popular python gaming library.
  • panda3d - Python graphics library.
  • pyglet - Python graphics library.
  • Kivy - A modern GUI toolkit for building apps, works seamlessly on Linux, Android, Windows and Mac.
  • PySide - Alternative GUI toolkit in Python, the open source version of PyQt which is commercial.
  • PySimpleGUI - Another GUI toolkit similar to PyQT and tkinter.
  • Tweepy - Library to access tweets using the twitter api.
  • pytz - Library to work with time-zones.
  • tqdm - Instantly make your loops show a smart progress meter.

Web-Frameworks

  • Django - A popular web framework written in Python. Often touted as the web framework for busy journalists with deadlines, Django is very flexible and can be adapted to any web project needs.
  • Flask - A minimalist web framework. While not as popular and stuffed as Django, Flask follows a more lego block approach to development - starting from a minimal core, and keep adding as needed. An excellent framework, nevertheless.
  • Bottle - A single module web framework for Python.

Online tutorials, books, puzzles

Popular Youtube channels

Top comments (9)

Collapse
 
mikethewatchguy profile image
MikeTheWatchGuy •

Since this is a list of resources for beginners, I think PySimpleGUI is an excellent choice for GUI frameworks to consider for beginners.

I don't know of many "beginners" that's have less than 9 months to a year of Python that's can pull off a Qt based program of any magnitude. Nor Flask & Django.

PySimpleGUI works on both ends of the difficulty scale, runs on multiple GUIs and has a ton of Documentation, a Cookbook, Demo Programs. In other words, an excellent resource for beginners.

Collapse
 
prahladyeri profile image
Prahlad Yeri • • Edited

Thanks, I've added it to the list.

Collapse
 
mikethewatchguy profile image
MikeTheWatchGuy •

Thank you!!

Collapse
 
highcenburg profile image
Vicente G. Reyes •

I'm not quite a fan of Real Python; I never was able to run anything from them. Corey Schafer is the man when it comes to Python.

Collapse
 
prahladyeri profile image
Prahlad Yeri •

I'd actually got it confused with Full Stack Python! Have you used that as a reference?

Collapse
 
highcenburg profile image
Vicente G. Reyes •

Yes I've used it to learn React and Vue with Django and Flask.

Collapse
 
jmcp profile image
James McPherson •

I'd add in stackoverflow.com, the Python interpreter REPL and suggest that if you really want to learn a new language then mucking around with it writing code is essential.

Collapse
 
grazhevskaja profile image
Alexandra Grazhevskaja •

I would also add "Dive into Python" by Mark Pilgrim as a must-read for everyone learning Python.

Collapse
 
prahladyeri profile image
Prahlad Yeri •

Thanks, I've added it to the list.