Beginner's Guide to Python
Welcome to Python.
The official Python tutorial provides a good starting point if you have programmed in another language.
New to programming? Python is free and easy to learn if you know where to start! This guide will help you get started.
Beginner's Guide: Chinese Translation/中文版入门
New to Python?
Read BeginnersGuide/Overview for a short explanation of what Python is.
Getting Python
Nextinstall the Python 3 interpreter on your computer. This is the program that reads Python programs and carries out their instructions; you need it before you can do any Python programming. Mac and Linux distributions may include an outdated version of Python (Python 2)but you should install an updated one (Python 3). See BeginnersGuide/Download for instructions to download the correct version of Python.
There are also Python interpreter and IDE bundles availablesuch as Thonny. Other options can be found at IntegratedDevelopmentEnvironments.
At some stageyou'll want to edit and save your program code. Take a look at HowToEditPythonCode for some advice and recommendations.
Learning Python
Nextread a tutorial and try some simple experiments with your new Python interpreter.
If you have never programmed beforesee BeginnersGuide/NonProgrammers for a list of suitable tutorials.
If you have previous programming experienceconsult BeginnersGuide/Programmerswhich lists more advanced tutorials.
If English isn't your first languageyou might be more comfortable with a tutorial that's been translated into your language. Consult python.org's list of Non-English resources.
Most tutorials assume you know how to run a program on your computer. If you are using Windows and need help with thissee How do I Run a Program Under Windows.
Here are some sites that focus on beginners and offer in-browser coding:
Please keep these links sorted alphabetically
Beginners Python tutorial at Python Land (free)
Codédex (non-free)
OutdatedPython 2! * Codecademy
Coding Bootcamps (non-free)
DataCamp (non-free)
Dataquest for Python for data science. (free)
Genepy interactive exercises (freeopen sourceno ads)
High School Technology Services for general Python (non-free)
LabEx Python Hands-on Labs (freemium)
Learn Python Python basics running in the browser(free)
Once you have read a tutorialyou can browse through Python's online documentation. It includes a tutorial that might come in handya Library Reference that lists all of the modules that come standard with Pythonand the Language Reference for a complete (if rather dry) explanation of Python's syntax.
When you are ready to write your first programyou will need a text editor or an IDE. If you don't want to use Thonny or something more advancedthen you can use IDLEwhich is bundled with Python and supports extensions.
This Python wiki also contains a page about Python One-Liners -- an obscure but interesting subculture in Python.
Need Help?
Need help with any of this? Read BeginnersGuide/Help for mailing lists and newsgroups.
An interactive and free way to learn Python is to ask ChatGPT or another generative AI model for help. The Python code quality generated by AI agents has become pretty good. State-of-the-art AI models work especially well for small projects or code understanding questions.
Most Python books will include an introduction to the language; see IntroductoryBooks for suggested titles.
Consult BeginnersGuide/Examples for small programs and little snippets of code that can help you learn.
Orif you prefer to learn Python through listening to a lectureyou can attend a training course or even hire a trainer to come to your company. Consult the PythonEvents page to see if any training courses are scheduled in your area and the PythonTraining page for a list of trainers.
Teachers can join the EDU-SIGa mailing list for discussion of Python's use in teaching at any level ranging from K-12 up to university.
Complete list of Beginner's Guide pages
- BeginnersGuide/Download
- BeginnersGuide/Examples
- BeginnersGuide/Help
- BeginnersGuide/Mathematics
- BeginnersGuide/NonProgrammers
- BeginnersGuide/NonProgrammersChinese
- BeginnersGuide/Overview
- BeginnersGuide/OverviewChinese
- BeginnersGuide/Programmers
- BeginnersGuide/Programmers (Cpp2Python.pdf)
- BeginnersGuide/Programmers/SimpleExamples
Quiz and Exercises
After Hours Programming - Python Quiz
CheckIO - Online learningtesting and improving your python skills
CS Circles - Online lessons and graded exercises
Finxter - How good are your Python skills? Test and Training with a Daily Python Puzzle
PyGUI - Collection of python quiz answersExamples And GUI Tkinter Tutorials For Beginners
Pythonspot - Python Quiz
Python Challenge - A Python Quiz App on Android Platform
Python Based AI and Prompt Engineering
AI Engineering Academy - Become a Certified AI Engineer with OpenAI APIHuggingFaceand Llama
Generative AI Tutorial - Generative AI Tutorial
GitHub Prompt Engineering Guide - List of helpful resources
Google Gemini (Python) - Python Library to access Google's Gemini Model
OpenAI API (Python) - Quickstart to Access OpenAI's API (PythonJavascriptcurl)
Looking for a particular Python module or application?
The first place to look is the Python Package Index.
- If you can't find anything relevant in the Package Index
try searching python.org - you can find anything mentioned on the Python sitein the FAQsor in the newsgroup. More info: where to search.
Nexttry Google or another search engine of your choice. Searching for "python" and some relevant keywords will usually find something helpful.
- Finallyyou can try posting a query to the comp.lang.python Usenet group.
Python-Related Cheat Sheets
Python Cheatsheet for Beginners: pythoncheatsheet.org
Machine Learning: Collection of 15 Machine Learning Cheat Sheets
Want to contribute?
Python is a product of the Python Software Foundationa non-profit organization that holds the copyright. Donations to the PSF are tax-deductible in the USAand you can donate via credit card or PayPal.
To report a bug in the Python coreuse the Python Bug Tracker.
To contribute a bug fix or other patch to the Python coreread the Python Developer's Guide for more information about Python's development process.
To contribute to the official Python documentationjoin the Documentation SIGwrite to [email protected] or use the Issue Tracker to contribute a documentation patch.
To announce your module or application to the Python communityuse comp.lang.python.announce. See the guide to Python mailing lists for more information.
To propose changes to the Python corepost your thoughts to comp.lang.python. If you have an implementationfollow the Python Patch Guidelines.
If you have a question are not sure where to report itcheck out the WhereDoIReportThis? page.