This repository is for experienced C#/.NET developers who already understand OOP, generics, LINQ, async/await, dependency injection, build tools, and testing.
The goal is to help you become an advanced Python developer who can ship production-grade code confidently.
Use this sequence to build momentum without skipping fundamentals.
-
Day 1: Foundations and runtime model
-
Day 2: Functions and functional patterns
-
Day 3: Errors, modules, and OOP modeling
-
Day 4: Typing and advanced runtime model
-
Day 5: Concurrency and systems
-
Day 6: Quality, packaging, and migration mindset
- Read: Quality And Tooling, Memory Idioms Migration
- Topics:
- 40. Testing with pytest
- 41. Mocking
- 42. Debugging
- 43. Packaging
- 44. Dependency management
- 45. Virtual environments
- 46. Linters and formatters
- 47. Performance and profiling
- 48. Memory management and garbage collection
- 49. Standard library overview
- 50. Python 3.14-specific features
- 51. Python idioms versus C# idioms
- 52. Common C# to Python migration mistakes
-
Day 7: Additional language features, Python-only features, and capstone
- Read: Additional Language Features, Python-Only Features Index
- Topics:
- 53. Async iteration, async generators, and async context managers
- 54. Exception groups and
except* - 55. Assignment expressions (
:=) - 56. Binary data:
bytes,bytearray, andmemoryview - 57. Advanced typing:
ParamSpec,TypeVarTuple,Literal,Annotated,Self - 58.
__slots__as a language feature - 59. Import hooks: custom finders and loaders
- 60.
contextvarsand task-local state - 61. Weak references and finalization patterns
- 62. Advanced descriptor and metaclass patterns
- Python-only feature 1: Duck Typing and Protocols
- Python-only feature 2: Extended Unpacking
- Python-only feature 3: Generator Pipelines
- Python-only feature 4: Contextlib Context Managers
- Python-only feature 5: Descriptors
- Python-only feature 6: Structural Pattern Matching
- Python-only feature 7: Metaclass Registry
- Build: Capstone project
- Advanced Walkthrough for C# Developers
- 01. Setup And Runtime
- 02. Data And Flow
- 03. Functions And Functional Tools
- 04. Errors And Modules
- 05. Oop And Modeling
- 06. Typing And Protocols
- 07. Advanced Language Runtime
- 08. Concurrency And Systems
- 09. Quality And Tooling
- 10. Memory Idioms Migration
- 11. Additional Language Features
- 53. Async iteration, async generators, and async context managers
- 54. Exception groups and
except* - 55. Assignment expressions (
:=) - 56. Binary data:
bytes,bytearray, andmemoryview - 57. Advanced typing:
ParamSpec,TypeVarTuple,Literal,Annotated,Self - 58.
__slots__as a language feature - 59. Import hooks: custom finders and loaders
- 60.
contextvarsand task-local state - 61. Weak references and finalization patterns
- 62. Advanced descriptor and metaclass patterns
- C# Features With No Direct Python Equivalent
- Python Features With No Direct C# Equivalent
- One Week Study Plan
- Capstone Project
- Further Study
uv sync
uv run src/csharp_to_python_learning/concepts/01_setup_and_runtime/topic_01_python_project_setup_with_uv.py
uv run -m pytestInitialize a new project (already done in this repository):
uv init --package --python 3.14.5Create/update .venv and install dependencies from pyproject.toml + uv.lock:
uv syncRun a command inside the project environment:
uv run -m pytest
uv run src/csharp_to_python_learning/concepts/03_functions_and_functional_tools/topic_12_decorators.pyAdd a runtime dependency:
uv add httpxAdd a dev dependency:
uv add --dev pytest ruff mypyuv run -m pytest
uv run -m pytest tests/test_concept_smoke.py -k asyncioEvery concept is runnable directly:
uv run src/csharp_to_python_learning/concepts/10_memory_idioms_migration/topic_50_python_3_14_specific_features.pyThe full concept-by-concept walkthrough is available in the pages folder:
Python-only features are organized in dedicated pages, similar to the Advanced Walkthrough:
- Reified generics at runtime with CLR metadata behavior.
- Method overloading resolution by compile-time signature.
ref,out, and unsafe pointer patterns as first-class language features.- Attribute-driven compile-time/source-generator ecosystems.
- Value types (
struct) with stack semantics equivalent to .NET.
- Runtime monkey-patching of modules/classes/functions.
- Descriptors as first-class attribute access primitives.
- Structural pattern matching with heterogeneous shape patterns.
- Context manager protocol (
with) as a language-level resource hook. - Rich dunder protocol for integrating with core syntax at runtime.
- Metaclass-driven class construction customization.
- Extended iterable unpacking in assignments and function calls.
Run the capstone:
uv run src/csharp_to_python_learning/capstone/capstone_async_event_pipeline.pyCapstone combines:
- dataclasses
- protocols/typing
- asyncio queues/tasks
- transformation pipeline patterns
- logging
- deterministic summary output
- Official Python docs for 3.14 language/runtime updates.
asynciointernals and cancellation design patterns.- Advanced typing (
TypeVarTuple,ParamSpec, plugin/tooling ecosystems). - Packaging and release automation for internal Python platforms.
