Beginner's Guide to Python
New to programming? Python is free and easy to learn if you know where to start! This guide will help you to get started quickly.
New to Python?
Read BeginnersGuide/Overview for a short explanation of what Python is.
Next, install the Python 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 OSX distributions from 10.3 (Panther) and up, include a version of Python, which, although it can be as much as two years out of date, may be suitable for beginning. Linux distributions also frequently include Python and it is readily upgraded. Jetbrain has a software called Pycharm and you can download it for free. See Pycharm download
There are also Python interpreter and IDE bundles available which are meant specifically for beginners. Thonny is a Python IDE with Python 3.5 built in and with several features that help learning programming.
There are currently two major versions of Python available: Python 2 and Python 3. The Python2orPython3 page provides advice on how to decide which one will best suit your needs. At the time of writing (21 Jun 2010), the rest of this page assumes you've decided to use Python 2.
See BeginnersGuide/Download for instructions for downloading the correct version of Python.
At some stage, you'll want to edit and save your program code. Take a look at HowToEditPythonCode for some advice and recommendations.
Next, read a tutorial and try some simple experiments with your new Python interpreter.
If you've never programmed before, see BeginnersGuide/NonProgrammers for a list of suitable tutorials.
If you have previous programming experience, consult BeginnersGuide/Programmers, which lists more advanced tutorials.
If English isn't your first language, you 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 this, see How do I Run a Program Under Windows. There is also Codecademy that will teach you from the start. see Codecademy
Once you've read a tutorial, you can browse through Python's online documentation. It includes a tutorial that may be helpful, a Library Reference that lists all of the modules that come standard with Python, and the Language Reference for a complete (if rather dry) explanation of Python's syntax.
When you are ready to write your first program you will need a text editor. To get started you can use any editor you are familiar with - even something like Notepad - but as you gain experience you may want to use a text editor with features that help you write Python programs. See PythonEditors for a list of programs friendly to Python code editing.
Need help with any of this? Read BeginnersGuide/Help for mailing lists and newsgroups.
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.
Or, if you prefer to learn Python through listening to a lecture, you 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-SIG, a 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/Programmers (Cpp2Python.pdf)
Quiz and Exercises
CheckIO - Online learning, testing and improving your python skills
After Hours Programming - Python Quiz
Python Guru Quiz- Python Quiz
Pyschools - A Collection of Python Quiz and Exercise Questions
Pythonspot - Python Quiz
Python Challenge - A Python Quiz App on Android Platform
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 site, in the FAQs, or in the newsgroup. More info: where to search.
You may also try our external guest project, pydoc.net, for advanced package and module search.
Next, try Google or other search engine of your choice. Searching for "python" and some relevant keywords will usually find something helpful.
- Finally, you can try posting a query to the comp.lang.python Usenet group.
Want to contribute?
Python is a product of the Python Software Foundation, a non-profit organization that holds the copyright. Donations to the PSF are tax-deductible in the USA, and you can donate via credit card or PayPal.
To report a bug in the Python core, use the Python Bug Tracker.
To contribute a bug fix or other patch to the Python core, read the Python Developer's Guide for more information about Python's development process.
To contribute to the official Python documentation, join the Documentation SIG, write to firstname.lastname@example.org , or use the Issue Tracker to contribute a documentation patch.
To announce your module or application to the Python community, use comp.lang.python.announce. See the guide to Python mailing lists for more information.
To propose changes to the python core, post your thoughts to comp.lang.python. If you have an implementation, follow the Python Patch Guidelines.
If you have a question are not sure where to report it, check out the WhereDoIReportThis? page.