Python programming language PDM - python package manager with PEP 582 support How to create Python package in 2022 SeqLogic - Sequential Logic, SeqiLog (pronounced seh-kwi-log), a Python library for logic design and verification.
RAE - for python packaging, distribution No-GIL Python
Sys.Monitoring - Execution event monitoring pyenv - switching between versions
Top libraries of 2021 Top libraries of 2020 Top 10 libraries of 2019
Self-assesment of Expertise level
WAT - inspection tool of objects, a fancy version of ice cream
tmwuc - tell me whatyou see
Python job scheduling - sched library
Yapsl - Python SMS library
Poetry 1.2.0 - PACKAGING AND DEPENDENCY MANAGEMENT
Natto - spatial environment for Python
How virtual environments work identify unused dependences to avoid bloated envs container types
Reloadium - adds hot reloading also called "edit and continue" functionality to any Python application
RYE - project management for PYthon
compile to another version ➜ py-backwards -i input.py -o output.py -t 2.7
Codon - Python-like compiler using LLVM: MIT paper
C compiler in 500 lines of Python
Shed Skin - restricted-Python-to-C++ compiler 0.9.6
Red Mail - Advanced Email Sender
WakaQ - Distributed task queue
Junja2 - a template engine; 2.1
speeding Python with Lua making python fast with mypyc
mypy - optional static type checker for Python
Py5 - py5 is a new version of Processing for Python 3.9+
Modern Python Performance Considerations
Python variables, references and mutability
30 days of Python - programming xhallenge
Overlooked core functionalities
Introduction to Linear Programming in Python
On Python's type hints - type hints
Koda - a collection of practical type-safe tools for Python.
The Algorithm Library A new PDF library
- Pyscript
- Codebrew
- Bryton
- Gradio - creates a web demo that runs in the browser using only python
- Gradio App - create beautiful user interfaces around your machine learning models
- PyPy.js - code - JIT compiler for Python that runs in the browser
Snakemake workflow management system - is a tool to create reproducible and scalable data analyses
The Big Book of small python projects
Practical python programming courses
From Python to Numpy - by Nicolas P. Rougier * v1.24.0 How to share NumPy arrsy between processes Xarray - N-D labeled arrays and datasets
JNumPy: - high-performance C extensions Numpy 2.0 C-style for loops
Setting up Python for ML on Windows
Machine Learning Tutorial Data-centric introduction to computing Logica - language for data manipulation
FVSL - Fast vector similarity using Rust and Python
RustPython - Python Interpreter Written in Rust
Interactive Python course The Python tutorial
A Simple Guide to creating Predictive Models
IDOM - declarative Python package for building highly interactive user interfaces
Python IDM - Internet Download manager
Tools for making python packages
Python style hints /introduced in Python 3.5
-
Python libraries for NLP:
-
Natural Language Toolkit (NLTK): https://www.nltk.org/
-
Gensim - for similarity analysis; topic modeling
-
txtai - All-in-one open-source embeddings database for semantic search, LLM orchestration and language model workflows
-
Ctrol-F for Video - useful for videos YouTube doesn't have captions for
-
PyCantonese: Cantonese Linguistics
NLP library moved to Stanza Core NLP + Bran - relation extraction based purely on attention
UM1 - Understanding Machine One - a cloud based REST service that provides Natural Language Understanding (NLU) as a Service (UaaS).
Diagrams - draw the cloud system architecture in Python code
Robyn - fast, extensible async Python web server with a Rust runtime
FLASK - for web development
FASTAPI - modern, fast (high-performance), web framework for building APIs with Python 3.7+ based on standard Python type hints
web2pdf - CLI to convert webpages to PDFs
Analyzing Hacker News with Six Language Understanding Methods
Word2Vec online' [demo](Demo at http://turbomaze.github.io/word2vecjson/)
TextAPI with (twitter example)[https://pythonalgos.com/2021/11/26/black-friday-how-does-twitter-feel/]
Survival analysis + Kaplan-Maier Estimate (non-parametric) + Cox Proportional Hazard Model (Semi-parametric) + Accelerated Failure Time Model (Parametric)
Lifelines library
Free for Developers + Atlas toolkit - Lightweight library to develop single-page web applications that are instantly accessible. Available for Java, Node.js, Perl, Python and Ruby.
- Colaboratory — Free web-based Python notebook environment with Nvidia Tesla K80 GPU.
- NVIDIA warp - Python framework for writing high-performance simulation and graphics code
- Datapane
Algebraic Number Theory package
The Python scientific stack, compiled to WebAssembly ; see demo
Handling optional imports - Kludge of the year
Coding habits for data scientists
Docstrings better than comments
[einsum](https://ajcr.net/Basic-guide-to-einsum/)
Faster Calculations with Numba
Pyodide: Python for the browser
PyFlow - visual scripting framework
https://github.com/jflam/chat-gpt-jupyter-extension
https://github.com/fperez/jupytee
Pyodide, Python in a web browser
Whereami - Uses WiFi & ML to predict where you are
Build a Reactive Data Streaming App with Python and Apache Kafka - Subscribe to alert without alert API https://www.confluent.io/resources/online-talk/coding-in-motion/building-a-reactive-data-streaming-app/
Overpass - host your own live streaming server
pyGeno for precision medicine -- github
Library for quantitative finance
Toolkit for quantitative finance
make a self contained executable for windows
spaCy for Text Analytics
Python Turtle for code reuse
Pylance Folders - python implementation
-
nb2md: conversion of Jupyter and Zeppelin notebooks to Jupyter or Markdown formats
-
Textualize - a framework for building Text User Interface applications
-
Turn any Jupyter cell into a shareable web-hosted Python script
-
Jupyterlite - rowser-based interactive computing
jupyter notebook --generate-config
notepad C:\Users[user-name].jupyter\jupyter_notebook_config.py
c.NotebookApp.notebook_dir ='C:/the/path/to/home/folder/' # to change directory c.NotebookApp.notebook_dir = 'C:\username\folder_that_you_whant' # for windows
Go to your Jupyter Notebook link and right click it. Select properties. Go to the Shortcut menu and click Target. Look for %USERPROFILE%. Delete it. Save. Restart Jupyter. C:\xxx\cwp.py C:xxx\envs\E1 C:\xxx\python.exe C:\xxx\jupyter-notebook-script.py "%USERPROFILE%/"
#c.NotebookApp.token = 'nonempty-string' # remove generated if "'_xsrf' argument missing from POST
c.NotebookApp.disable_check_xsrf = True
- Remote GUI for Python
- Built-ins
- Kivy
- libavg
- Pyqt
- PySimpleGUI; examples
- pyforms
- pypi
- TkInter
- Wxpython
- SMS with providers.py
- Commit to github via e-mail
New Pandas - 1.00 - January 29, 2020
Is Python the world's most popular language?
pass a URL in place of a file name dfs = pd.read_html(url)
date ranges date_range = pd.date_range(date_from, date_to, freq="D")
if you set indicator
parameter of merge() to True pandas adds a column that tells you which dataset the row came from merge with approximate match - the tolerance parameter of merge_asof()
pd.merge_asof(trades, quotes, on="timestamp", by='ticker', tolerance=pd.Timedelta('10ms'), direction='backward')
Merge with indicator is also useful for doing anti-joins:
left.merge(right, how="left", indicator=True, ...)
[lambda df: df._merge == "left_only"]
Use gzip with when saving to csv
Create an Excel report and add some charts
-
API Documentation for Python Projects Rest API, FTP, TCP, etc. Choosing the one according to your data requirements and speed would be wise.
- standard Rest API helps to obtain data in real-time + https://marketstack.com/?fpr=geekflare + https://finnhub.io/docs/api + https://github.com/barchart/barchart-ondemand-client-python + Open-Meteo - free weather forecast APIs + Open Weather + Realtime weather API + Hacker-News API
- With TCP, there’s no need to request for fetching the data
- With FTP - older tech
Regex: Examples of regular expressions for matching patterns
Graph: A*, B*, Breadth-first, D*, Depth-first, Dijkstra's,..
Example of a graph with six nodes A-F and eight edges represented by Python dictionary:
graph = {'A': ['B', 'C'],
'B': ['C', 'D'],
'C': ['D'],
'D': ['C'],
'E': ['F'],
'F': ['C']}
-
SURD - Synergistic-Unique-Redundant Decomposition of causality
-
Amazon's Machine Learning University (MLU)
-
CoCalc created by the SageMath developers
-
Gradient-Free-Optimizers - a collection of easy to use optimization techniques
Web: Beautiful Soup is a Python library for pulling data out of HTML and XML files.
easy_install beautifulsoup4
or better keep it in virtualenv: sudo easy_install virtualenv pip install BeautifulSoup4
-
Semantic eBook search](https://github.com/derwiki/ebook-search) - with openAI
-
- The Farm: Requests
- The Stew: Beautiful Soup 4
- The Salad: lxml
- The Restaurant: Selenium
- The Chef: Scrapy
- Scyscraper
-
You-Get - dumb downloader that scapes the web
-
Pytudes - Norvig's practice programs
-
MUD Pi - A simple text-based Multi-User Dungeon (MUD) game, which could be run on a Raspberry Pi or other low-end server
-
Coconut, a functional programming language that compiles to Python
-
Taichi - Python-based parallel programming
-
Codecrafters - Practice Writing Complex Software
-
Fluent Python - Luciano Ramalho's book
-
(https://www.cs.cmu.edu/~ymiao/pdnntk.html) - PDNN: A Python Toolkit for Deep Learning
-
Numerical Python, fast and sophisticated arrays - python 2.7
-
Pythonic Data Structures and Algorithms
git clone git://github.com/numpy/numpy.git numpy
http://matplotlib.org/ - python 2D plotting library
If you get an ImportError: No module named matplotlib
set your PYTHONPATH, eg: export PYTHONPATH=/Library/Python/2.7/site-packages:$PYTHONPATH
git clone git://github.com/scipy/scipy.git scipy
PyAudio provides Python bindings for PortAudio, the cross-platform audio I/O library
to play and record audio on a variety of platforms.
http://people.csail.mit.edu/hubert/pyaudio/
funct array - a better python list
Simple way to access google api for speech recognition with python pip install pygsr
WhisperSpeech - an Open Source text-to-speech system built by inverting Whisper. Previously known as spear-tts-pytorch.
A grammar of graphics for python
Knowledge extraction from unstructured texts
wrapper providing R's ggplot2 syntax
Brancher, A user-centered Python package for differentiable probabilistic inference
the Hitchhikers Guide to Python
A Hitchhikers Guide to Asynchronous Programming
-
Sherlock - Find usernames across social networks
-
Maigret - Find information by username from thousands of sites
-
Microdot - a web framework for microcontrollers
-
symforce - fast symbolic computations
-
ActivityWatch - open source time tracker
-
PyInfra - automate infrastructure
-
PySheets - spreadsheet UI
-
Chatistics - convert chat logs into Panda DataFrames
-
Daft - distributed dataframe
-
Pylo - python front end to Prolog
-
Opytimizer - a Nature-Inspired Python Optimizer
-
DotDict - A simple Python library that builds upon argparse.Namespace to make chained attributes possible.
-
Datasette Lite - server-side Python web application running in a browser - try it out here
-
Flatland - environment for program synthesis experiments
-
Pyright - static type checker
-
MyPy - linter on steroids
-
Keyboard- hardware designed for python only
-
n.py - simple note-raking tool
-
Pycel - Python extension language using accelerators
-
Errbot, another slackbot
-
Mario - python pipelines for your shell
-
Pyp - python from shell
-
Semantle - guess the secret word
-
Semantic Bookmark Manager - A web application for managing bookmarks with semantic search capabilities. . Flask app with minimum JS
-
urllib3 now works in the browser
-
PySpread - pythonic spreadsheets
-
Note - command-line note-taking app
-
DataProfiler - library designed to make data analysis, monitoring and sensitive data detection easy.
-
K-Anonymity - anonymization methods for network security
-
Malicious PyPI packages - security
-
Zipfly - zip archive generator
-
Diffoscope - In-depth comparison of files, archives, and directories
-
Whoogle - google search without ads
-
Executorch - https://pytorch.org/executorch/stable/index.htmlPyTorch platform that provides infrastructure to run PyTorch programs everywhere from AR/VR wearables to standard on-device iOS and Android mobile deployment
- Hummingbard built on top of Matrix
-
PyQT5, Python GUI
-
Apprise, Push notifications
-
D-Tale - tool to visualize pandas dataframes
(Slicing, Indexing, Subsetting ataframes)[https://datacarpentry.org/python-ecology-lesson/03-index-slice-subset/]
df[~((df.A == 0) & (df.B == 2) & (df.C == 6) & (df.D == 0))]
df.ix[rows]
df[((df.A == 0) & (df.B == 2) & (df.C == 6) & (df.D == 0))]
df.loc[[0,2,4]]
df.loc[1:3]
df.iloc[0:df[df.year == 'y3'].index[0]]
pip install selenium # Downloading Python bindings for Selenium (for windows: C:\Python35\Scripts\pip.exe install selenium)
Place drivers in /usr/bin or /usr/local/bin
Cons: Selenium tests are unstable, time to maintain and run, low ROI
Old school: Ranorex, LeanFT, TestComplete, Telerik and Sahi; Fantom.js, Mocha, Jasmine and Protractor; Screenster
Testing with Cucumber and Capybara
Pytest for data scientists S3 testing; blog post
Asmle - Wordle in 512 bytes
A RESTish web API for climate change related data; github
Global average temperaturesdirect link
cold and warm episodes by season
Astroquery - collection of tools to access online Astronomical data
Gnupg - Python library which takes care of the internal details and allows its users to generate and manage keys, encrypt and decrypt data, and sign and verify messages. See also
Pysa: An open source static analysis tool to detect and prevent security issues in Python code
updating 2.7.x on mac (https://www.python.org/downloads/)
sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7
sudo mv /Library/Frameworks/Python.framework/Versions/2.7 /System/Library/Frameworks/Python.framework/Versions
sudo chown -R root:wheel /System/Library/Frameworks/Python.framework/Versions/2.7
sudo rm /System/Library/Frameworks/Python.framework/Versions/Current
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/2.7 /System/Library/Frameworks/Python.framework/Versions/Current
sudo rm /usr/bin/pydoc
sudo rm /usr/bin/python
sudo rm /usr/bin/pythonw
sudo rm /usr/bin/python-config
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/2.7/bin/pydoc /usr/bin/pydoc
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python /usr/bin/python
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/2.7/bin/pythonw /usr/bin/pythonw
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python-config /usr/bin/python-config
sudo easy_install pip // pip install --upgrade pip
sudo easy_install -U numpy
pip install scipy
pip install matplotlib
-
Free-threaded CPython: [github]( py-free-threading.github.io launched)
- [Faster CPython at PyCon](Faster CPython at PyCon
- Notes from PyCon 2022
- Videos from PyCcon 2024