There are a whole bunch of common programming tasks that are easy in Python. For someone who is not yet a programmer, who wants to become a programmer, for those people Python is particularly easy to get. In Python, every symbol you type is essential. |guido| Guido van Rossum ############################################################################### Introduction to Python ############################################################################### |python| **Python** is a high-level, interpreted scripting language. It was created in the early 1990s by Guido van Rossum at Stichting Mathematisch Centrum (CWI, see https://www.cwi.nl/) in the Netherlands as a successor of a language called ABC. Guido remains Python’s principal author, although it includes many contributions from others. Python 2.0 was released in 2000, and the 2.x versions were the prevalent releases until December 2008. At that time, the development team made the decision to release version 3.0, which contained a few relatively small but significant changes that were not backward compatible with the 2.x versions. Python 2 and 3 are very similar, and some features of Python 3 have been backported to Python 2. But in general, they remain not quite compatible. Both Python 2 and 3 have continued to be maintained and developed, with periodic release updates for both. However, an official End Of Life date of January 1, 2020 has been established for Python 2, after which time it will no longer be maintained. Python is still maintained by a core development team at the Institute, and Guido is still in charge, having been given the title of BDFL (Benevolent Dictator For Life) by the Python community. The name Python, by the way, derives not from the snake, but from the British comedy troupe Monty Python’s Flying Circus, of which Guido was, and presumably still is, a fan. It is common to find references to Monty Python sketches and movies scattered throughout the Python documentation. Here are some significant facts about Python. .. rubric:: Python is popular Python has been growing in popularity over the last few years. The 2018 Stack Overflow Developer Survey ranked Python as the 7th most popular and the number one most wanted technology of the year. By the end of Q-4 in 2022 Python is the **top** language on all GitHut metrics :cite:`github:stats`. Here are some logos of unknown companies across the globe who uses Python: .. centered:: |google| |facebook| |instagram| |spotify| |quora| |netflix| |dropbox| |reddit| .. rubric:: Python is interpreted Many languages are compiled, meaning the source code you create needs to be translated into machine code, the language of your computer’s processor, before it can be run. Programs written in an interpreted language are passed straight to an interpreter that runs them directly. This makes for a quicker development cycle because you just type in your code and run it, without the intermediate compilation step. .. rubric:: Python is free The Python interpreter is developed under an OSI-approved open-source license, making it free to install, use, and distribute, even for commercial purposes. .. rubric:: Python is portable Because Python code is interpreted and not compiled into native machine instructions, code written for one platform will work on any other platform that has the Python interpreter installed. This is true of any interpreted language, not just Python. .. rubric:: Python is simple As programming languages go, Python is relatively uncluttered, and the developers have deliberately kept it that way. A rough estimate of the complexity of a language can be gleaned from the number of keywords or reserved words in the language. These are words that are reserved for special meaning by the compiler or interpreter because they designate specific built-in functionality of the language. There are only 35 :cite:`docs-python:keywords` in Python and they are: .. include:: /appx/_keywords.txt .. rubric:: Python is general purpose Python is everywhere. Talking more specific common scopes for Python developers are :cite:`python-usage`: - Web Scraping Applications - Data Science Solutions - Machine Learning Applications - Web Development - Game Development - Scientific and Numeric Applications - Image Design and Graphic Design Applications - Finance Fintech Platform - Language Development - Operating Systems .. toctree:: :caption: Contents :name: intro install interact .. static files within this document .. |python| image:: /../assets/img/python.svg :width: 24 .. |google| image:: /../assets/img/google.svg :width: 64 :alt: Google :target: https://about.google/ .. |facebook| image:: /../assets/img/facebook.svg :width: 64 :alt: Facebook :target: https://www.facebook.com/ .. |instagram| image:: /../assets/img/instagram.svg :width: 64 :alt: Instagram :target: https://about.instagram.com/ .. |spotify| image:: /../assets/img/spotify.svg :width: 64 :alt: Spotify :target: https://support.spotify.com/us/article/what-is-spotify/ .. |quora| image:: /../assets/img/quora.svg :width: 64 :alt: Quora :target: https://www.quora.com/about .. |netflix| image:: /../assets/img/netflix.svg :width: 64 :alt: Netflix :target: https://about.netflix.com .. |dropbox| image:: /../assets/img/dropbox.svg :width: 64 :alt: Dropbox :target: https://www.dropbox.com/about .. |reddit| image:: /../assets/img/reddit.svg :width: 64 :alt: Reddit :target: https://www.redditinc.com/ .. |guido| image:: /../assets/img/guido-headshot-2019.jpg :width: 100