- Jupyter Notebooks in VS Code
- Python Virtual Environments: A Primer
- The Python Tutorial
- Single and Double Underscores in Python Names. Throwaway variable _
- Iterators and Iterables in Python: Run Efficient Iterations
- The Walrus Operator: Python's Assignment Expressions
- How do I check if a variable exists? Assignment to
None
- Short circuit evaluation
- LEGB rule for Python Scope
- A Python Quick Reference
- Python One-Liners: Syntax and Simplicity at Its Best
- Comprehensive Python Cheatsheet
- Python cheatsheet
- Ultimate Python Cheat Sheet: Practical Python For Everyday Tasks
- Async IO in Python: A Complete Walkthrough
- Context Managers and Python's with Statement
- Getters and Setters: Manage Attributes in Python - Great intro to
Properties
- Primer on Python Decorators. Decorators may serve as great debugging tools. Also see The Python Decorator Handbook.
- How to Use Python Lambda Functions. The Pythonic way recommends replacing
map()
,filter()
andfunctools.reduce()
with generator expressions. - Understanding Closures in Python: A Guide with Real-World Examples: Objects are data with methods attached, closures are functions with data attached.
- Higher Order Functions and Decorators and Closures
- Closured lexical environments are stored in the property
__closure__
of a function - Common Gotchas
- Raymond Hettinger's Beautiful Idiomatic Python
- Data Classes in Python 3.7+ (Guide)
- Python's .call() Method: Creating Callable Instances and Using call method to invoke class instance as a function
- The Python Standard Library
- The Python Language Reference
- Glossary
- Python Frequently Asked Questions
- PEP 8 – Style Guide for Python Code
- The Zen of Python :
$ python3 -m this
- Python's assert: Debug and Test Your Code Like a Pro
- Python's unittest: Writing Unit Tests for Your Code
- Packaging Python Projects
- Machine Learning for Physicists
- Every dunder method in Python
- Built-in Functions
- Functional Programming in Python: When and How to Use It
- Monkey Patching
- Duck Typing in Python: Writing Flexible and Decoupled Code
- What Is the Python Global Interpreter Lock (GIL)?
- Memory Management in Python
- Great article on dynamic/heap memory vs local/stack memory: Note:
allocate()
/deallocate()
in Fortran allocates/deallocates heap. Heap allocation actually requests more memory from OS, as and when needed. Stack is memory already allocated by OS when program is being launched/invoked. Python and Java allocates on its own, automatically, and deallocates using garbage collection. Fortran does similar with automatic variables. C requires explicit memory management, e.g. withmalloc()
andfree()
. - Python Wheels | Conda vs Pip
- TBA:
- numpy
- matplotlib
- scikit-learn
- keras /tensorflow / jax / pytorch / transformers
- pandas
- scipy
Last active
September 11, 2024 12:04
-
-
Save SomajitDey/afec6aa112dabd9fa92697ca6e86a55a to your computer and use it in GitHub Desktop.
Great resources for learning / refreshing Python
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment