Python

Basic Resources

Specific Topics

Web Frameworks

Web Scraping / Crawling

Some Relevant Portions of the Python Standard Library

  • array
  • bisect – manipulate sorted lists
  • collections – additional data types
  • configparser
  • csv
  • datetime
  • difflib
  • doctest – for running tests embedded in docstrings
  • email
  • heapq
  • html
  • itertools – efficient iterators
  • json
  • logging
  • math – tools for random, statistics, floating point math
  • os
    • os.path
  • pathlib
  • pdb – Python Debugger
  • pickle – object serialization
  • pprint – for pretty printing
  • pydoc – documentation generation
  • pytest
  • random – generate pseudo-random numbers
  • re – for regular expressions
  • sched – event scheduler
  • smtpd
  • sqlite3
  • statistics
  • string
  • sys
  • sysconfig
  • typing – Allows type hinting
  • unittest – Framework for unit testing.
  • urllib
  • venv – Virtual Environments

Stuff I Use

  • Pipenv: Python Dev Workflow for Humans
    • Project describes itself as “a tool that aims to bring the best of all packaging worlds (bundler, composer, npm, cargo, yarn, etc.) to the Python world.”
  • pyenv
    • Similar to Node’s nvm and Ruby’s rbenv; allows for installing and managing multiple versions of Python side by side.
  • Requests: HTTP for Humans (by Kenneth Reitz).

Stuff I May Use But Haven’t Yet

  • Ansible – IT automation platform.
  • buildbot – Continuous Integration testing framework.
  • Eve – REST API framework.
  • Fabric – For systems administration.
  • Flask
  • Gooey – Create GUI app automatically for CLI apps.
  • graphene – GraphQL framework.
  • gspread – Google Sheets Python API.
  • Jinja2 – Template Engine.
  • Keras – Deep Learning Library, can run on top of TensorFlow, CNTK, Theano.
  • Kivy – Cross-platform (including mobile) UI framework.
  • pandas – Data analysis / manipulation.
  • Psutil – For systems administration.
  • pyinstaller – Create stand-alone executables.
  • Python Fire – Auto generates CLIs for Python objects.
  • PyYAML
  • q – Run SQL against CSV/TSV files.
  • Scrapy – Scraping and web crawling framework.
  • SciPy – Data Science and Analysis toolset. Includes NumPy, SciPy library, Matplotlib, IPython, pandas, Sympy, nose.
  • Scikit-Learn – Machine Learning.
  • schedule – Job scheduling.
  • Spacy – NLP
  • SQLAlchemy – SQL Toolkit and ORM.
  • SQL for Humans by Kenneth Reitz.
  • TextBlob – Text Processing, including sentiment analysis.

Software Made in Python

For a much more comprehensive list see Awesome Python Applications.

Python Community