Python (programming language)

Python is a programming language. It was made to be open source and easy to read. A Dutch programmer named Guido van Rossum made Python in 1991. He named it after the television program Monty Python's Flying Circus. Many Python examples and tutorials include jokes from the show.

Python is an interpreted language. Interpreted languages do not need to be compiled to run. A program called an interpreter runs Python code on almost any kind of computer. This means that a programmer can change the code and quickly see the results. This also means Python is slower than a compiled language like C, because it is not turned into machine code ahead of time. Instead, this happens as the program is running.

Python's developers try to avoid changing the language to make it better until they have a lot of things to change. Also, they try not to make small repairs, called patches, to unimportant parts of CPython, the main version of Python, even if the patches would make it faster. When speed is important, a Python programmer can write some of the program in a different language, like C, or use PyPy, a different kind of Python that uses a just-in-time compiler.

Keeping Python fun to use is an important goal of Python’s developers. It reflects in the language's name, a tribute to the British comedy group Monty Python. Tutorials often take a playful approach, such as referring to spam and eggs instead of the standard foo and bar.

Python use 
Python is usually used for making websites, automating common tasks, and making charts and graphs. Since it's simple to learn, people who are not computer experts, like bookkeepers and researchers, often learn Python.

Its standard library is made up of many functions that come with Python when it is installed. On the Internet there are many other libraries libraries have been examined to provide wonderful ends in varied areas like Machine Learning (ML), Deep Learning, etc. These libraries make it a powerful language; it can do many different things.

Syntax 
Some of Python's syntax comes from C, because that is the language that Python was written in. But Python uses whitespace to delimit code: spaces or tabs are used to organize code into groups. This is different from C.  In C, there is a semicolon at the end of each line and curly braces ({}) are used to group code. Using whitespace to delimit code makes Python a very easy-to-read language.

Statements and control flow 
Python's statements include:

 The assignment statement, or the = sign. In Python, the statement x = 2 means that the name x is bound to the integer 2. Names can be rebound to many different types in Python, which is why  Python is a dynamically typed language. For example, you could now type the statement x = 'spam' and it would work, but it wouldn't in another language like C or C++.
 The if statement, which runs a block of code if certain conditions are met, along with else and elif (a contraction of else if from other programming languages). The elif statement runs a block of code if the previous conditions are not met, but the conditions for the elif statement are met. The else statement runs a block of code if none of the previous conditions are met.
 The for statement, which iterates over an iterable object such as a list and binds each element of that object to a variable to use in that block of code, which creates a for loop. 
 The while statement, which runs a block of code as long as certain conditions are met, which creates a while loop.
 The def statement, which defines a function or method.
 The pass statement, which means "do nothing."
 The class statement, which allows the user to create their own type of objects like what integers and strings are.
 The import statement, which imports Python files for use in the user's code.
 The print statement, which outputs various things to the console.

Expressions 
Python's expressions include some that are similar to other programming languages and others that are not.

 Addition, subtraction, multiplication, and division, represented by +, -. *, and /.
 Exponents, represented by **.
 To compare two values, Python uses ==.
 Python uses the words "and", "or", and "not" for its boolean expressions.

Example 
This is a small example of a Python program. It shows "Hello World!" on the screen.

print("Hello World!")

# This code does the same thing, only it is longer:

ready = True
if ready:
    print("Hello World!")

Python also does something called "dynamic variable assignment". This means that when a number or word is made in a program, the user does not have to say what type it is. This makes it easier to reuse variable names, making fast changes simpler. An example of this is shown below. This code will make both a number and a word, and show them both, using only one variable.

x = 1
print(x)
x = "Word"
print(x)

In a "statically typed" language like C, a programmer would have to say whether x was a number or a word before C would let the programmer set up x, and after that, C would not allow its type to change from a number to a word.

References

Other websites 
 Python tutorial 
 Learn Python

High-level programming languages
Multi-paradigm programming languages
Object-oriented programming languages
Functional languages