Learning Python
Tags: python, beginners, programming
Published: 2022-02-16 13:36:34

Python is a beginner-friendly programming language that prioritizes readability, this is why its syntax has many similarities with the English language. In fact, ease of use was one of Python’s founding principles when it was created by Guido van Rossum.

> The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code. Not in reams of trivial code that bores the reader to death. — Guido van Rossum

You can start learning Python on your own for free. The best thing about learning Python, is that there is a plethora of documentation, websites, books, tutorials, and courses available. Start by following these steps:
1. Find out more about Python.
2. Learn the basics.
3. Practice as you learn.
4. Solve coding challenges.
5. Learn domain-specific concepts and libraries.

### Software
* [Python](https://www.python.org/downloads/)
* [Python Tutor](https://pythontutor.com/)
* [jDOODLE](https://www.jdoodle.com/python3-programming-online/)
* [ONLINE PYTHON](https://www.online-python.com/)
* [trinket](https://trinket.io/)
* [rplit>](https://replit.com/)

### Documentation
* The latest [Python 3.x documentation](https://docs.python.org/3/) online.
* Download the latest [Python 3.x documentation](https://docs.python.org/3/download.html).
* The [Beginner's Guide to Python](https://wiki.python.org/moin/BeginnersGuide).
* Python community list of [Python editors](https://wiki.python.org/moin/PythonEditors).
* Python community list of [Integrated Development Environments (IDEs)](https://wiki.python.org/moin/IntegratedDevelopmentEnvironments).
* The Hitchhiker's [Guide to Python](https://docs.python-guide.org/).
* A curated list of [Awesome Python](https://github.com/vinta/awesome-python) frameworks, libraries, software and resources.

### PEPs
* [ [PEP 8](https://www.python.org/dev/peps/pep-0008/) ]  Style Guide for Python Code
* [ [PEP 20](https://www.python.org/dev/peps/pep-0020/) ] The Zen of Python
* [ [PEP 257](https://www.python.org/dev/peps/pep-0257/) ] Docstring Conventions
* [ [PEP 287](https://www.python.org/dev/peps/pep-0287/) ] reStructuredText Docstring Format
* [ [PEP 405](https://www.python.org/dev/peps/pep-0405/) ] Python Virtual Environments
* [ [PEP 435](https://www.python.org/dev/peps/pep-0435/) ] Adding an Enum type to the Python standard library
* [ [PEP 484](https://www.python.org/dev/peps/pep-0484/) ] Type Hints
* [ [PEP 526](https://www.python.org/dev/peps/pep-0526/) ] Syntax for variable Annotations
* [ [PEP 634](https://www.python.org/dev/peps/pep-0634/) ] Structural Pattern Matching
* [ [PEP 3101](https://www.python.org/dev/peps/pep-3101/) ] Advanced String Formatting
* [ [PEP 3107](https://www.python.org/dev/peps/pep-3107/) ] Function Annotations
* [ [PEP 3129](https://www.python.org/dev/peps/pep-3129/) ] Class Decorators

### Books
* CR Severance - [Python for Everybody](https://www.py4e.com/book)
* Kushal Das. - [Python for you and me](https://pymbook.readthedocs.io/en/latest/)
* CH Swaroop - [A Byte of Python](https://python.swaroopch.com/)
* Allen B Downey - [Think Python 2e](https://greenteapress.com/wp/think-python-2e/)
* Al Sweigart - [Automate the Boring Stuff with Python](https://automatetheboringstuff.com/)
* Al Sweigart - [Beyond the Basic Stuff with Python](https://inventwithpython.com/beyond/)
* Al Sweigart - [Cracking Codes with Python](http://inventwithpython.com/cracking/)
* Mark Pilgrim - [Dive Into Python 3](http://diveintopython3.problemsolving.io/)
* Apprize.best - [Python Programming Made Easy (2016)](https://apprize.best/python/easy_1/index.html)
* Rafe Kettler - [A Guide to Python’s Magic Methods](https://github.com/RafeKettler/magicmethods/blob/master/magicmethods.pdf)

### Tutorials
* Programiz - [Learn Python Programmning](https://www.programiz.com/python-programming)
* Python.org - [The Python Tutorial](https://docs.python.org/3/tutorial/)
* Real Python - [Real Python Tutorials](https://realpython.com/)
* Google - [Google's Python Class](https://developers.google.com/edu/python)
* KidsCanCode - [Learning to Code with Python](https://www.youtube.com/playlist?list=PLsk-HSGFjnaGe7sS_4VpZoEtZF2VoWtoR)
* Pythonbasics.org - [Learn Python Programming](https://pythonbasics.org/)
* ThePythonGuru - [Python tutorials for Beginners](https://thepythonguru.com/)
* TechBeamers - [Learn Python Step by Step](https://www.techbeamers.com/python-tutorial-step-by-step/)
* pythoncheatsheet.org - [Python Cheatsheet](https://www.pythoncheatsheet.org/)
* Pythonspot - [Python Tutorials](https://pythonspot.com/)
* Python Tutorial - [Python Tutorial](https://www.pythontutorial.net/)
* CodersLegacy - [Learn Python](https://coderslegacy.com/python/)
* Study tonight - [Python Tutorial](https://www.studytonight.com/python/)
* Full Stack Python - [Build , Deploy and Operate Python Applications](https://www.fullstackpython.com/)

### Interactive Tutorials & Books
* learnpython.org - [Intro to Python tutorial](https://www.learnpython.org/)
* W3schools - [Python Tutorial](https://www.w3schools.com/python/)
* codetheblocks.com - [Code the Blocks (CTB)](https://codetheblocks.com/tutorials/introduction)
* Luther College - [Problem Solving with Algorithms and Data Structures using Python](https://runestone.academy/ns/books/published/pythonds/index.html)

### Tutorial Videos
* CS Dojo - [Python Tutorials for Absolute Beginners](https://www.youtube.com/playlist?list=PLBZBJbE_rGRWeh5mIBhD-hhDwSEDxogDg)
* Traversy Media - [Python Crash Course For Beginners](https://www.youtube.com/watch?v=JJmcL1N2KQs)
* Al Sweigart - [Automate the Boring Stuff with Python](https://www.youtube.com/playlist?list=PL0-84-yl1fUnRuXGFe_F7qSH1LEnn9LkW)
* freecodecamp - [Python Basics with Sam](https://www.youtube.com/playlist?list=PLWKjhJtqVAbkmRvnFmOd4KhDdlK1oIq23)
* Sentdex - [Intermediate Python Programming](https://www.youtube.com/playlist?list=PLQVvvaa0QuDfju7ADVp5W1GF9jVhjbX-_)
* Next Day Video - [Transforming Code into Beautiful, Idiomatic Python](https://www.youtube.com/watch?v=OSGv2VnC0go)

### Courses
* CR Severance - [Programming for Everybody (py4e)](https://www.py4e.com/)
* freecodecamp - [Python for Everybody](https://www.freecodecamp.org/news/python-for-everybody/)
* sololearn - [Python Core](https://www.sololearn.com/learning/1073)

### Practise Exercises & Coding Challenges
* github.com/gregmalcolm - [Python Koans](https://github.com/gregmalcolm/python_koans)
* checkio - [Coding games beginners to advanced](https://checkio.org/)
* finxter - [Puzzle Training](https://finxter.com/)
* Practice Python - [Beginner Python exercises](https://www.practicepython.org/)
* w3resource - [Python Exercises, Practice, Solutions](https://www.w3resource.com/python-exercises/)
* GeeksforGeeks - [Python Practice Exercises](https://www.geeksforgeeks.org/python-exercises-practice-questions-and-solutions/)

### Podcasts
* [Podcast.\_\_init__](https://www.pythonpodcast.com/)
* [PythonBytes](https://pythonbytes.fm/episodes/all)
* [Running in Production](https://runninginproduction.com/)
* [Talk Python To Me](https://talkpython.fm/episodes/all)
* [Test & Code](https://testandcode.com/episodes)
* [The Real Python Podcast](https://realpython.com/podcasts/rpp/)