Python is a high-level programming language.
It has a design philosophy that general-purpose interpreted,emphasizes code readability, notably using significant whitespace, interactive, object-oriented, and high-level programming language. It has grown from humble beginnings into one of the most popular programming languages on the planet. Python support Artificial Intelligence (AI), Machine Learning (ML), natural language processing and data science.
It's a great language for first time programmers. It's an open source programming language that is known for its simple and easy to learn syntax.
it has numerous libraries and built in features which makes it easy to tackle the needs of Data science.
It supports multiple programming paradigms including object-oriented, imperative,functional and procedural, and has a large and comprehensive standard library.
Python is an interpreted language, so it doesn't need to be compiled. This helps speed up development, as no extra compile step is required.
It provides a dynamic type system and automatic memory management.
It provides constructs that enable clear programming on both small and large scales.
Python is a general-purpose high-level programming language. It supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available across all major platforms in source or binary form. These can be downloaded for free and they can also be freely distributed.
Python is an open source language, released under a GPL-compatible license. Python Software Foundation (PSF) holds the copyright of Python.
Its growing popularity has allowed it to enter into some of the most popular and complex processes like Artificial Intelligence (AI), Machine Learning (ML), natural language processing, data science etc.
In the last few years, its popularity has increased immensely. According to stackoverflow.com's recent survey, Python is in the top ten Most Popular Technologies in 2018.Official Web Site: https://www.python.org
Python Version History
Python was initially created in December 1989 by Dutch programmer, Guido van Rossum as a hobby programming project over the Christmas week. He was an employee for Stichting Mathematisch Centrum (CWI) at the time, and that's where Python was used initially. He named Python after the British sketch comedy series, Monty Python's Flying Circus.
Currently, PSF(Python Software Foundation) supports two versions, Python 2.x & Python 3.x. Python 2.0 was released in October 2000 and includes a large number of features. PSF continues to support version Python 2 because a large body of existing code could not be forward ported to Python 3. So, they will support Python 2 until 2020.
Python 3.0 was released on December 3rd, 2008. It was designed to rectify certain flaws in earlier version. This version is not completely backward-compatible with previous versions. However, many of its major features have since been back-ported to the Python 2.6.x and 2.7.x version series. Releases of Python 3 include 2 to 3 utilities to facilitate the automation of translation of Python 2 code to Python 3.
The following table lists all the important versions history of Python:
|Version||Release Date||Important Features|
|Python 0.9.0||February 1991||
|Python 1.0||January 1994||
|Python 2.0||October 2000||
|Python 2.7.0 - Current version||July 2010|
|Python 2.7.15 - Current sub-version||May 2018|
|Python 3||December 2008||
|Python 3.6||December 2016|
|Python 3.6.5||March 2018|
|Python 3.7.0 - Current Version||May 2018||
- Python is an interpreter-based language, which allows execution of one instruction at a time.
- Extensive basic data types are supported e.g. numbers (floating point, complex, and unlimited-length long integers), strings (both ASCII and Unicode), lists, and dictionaries.
- Variables can be strongly typed as well as dynamic typed.
- Supports object-oriented programming concepts such as class, inheritance, objects, module, namespace etc.
- Cleaner exception handling support.
- Supports automatic memory management.
- GUI Programming, Dynamically Typed, Embeddable and Portable.
- Easy to learn — Python's syntax is simple and includes English words that make it easy to read and understand. Beginners can learn a lot just by looking at existing code.
- Fast development cycle — developers can write Python apps very quickly. This is ideal for teams needing to do a lot of prototyping before settling on a final design.
- Extensive standard library — this standard library is constantly evolving with modules for regular expression matching, standard mathematical functions, threads, operating systems interfaces, network programming, email handling, HTML parsing, and more.
- Extensive list of third party modules — most of these are open source, and include web frameworks, DB interfaces, GUI toolkits, and more.
- Scales well — basic Python applications can be scaled up to complex applications quite easily.
- Relatively concise — a lot can be achieved with a small amount of code.
- Versatile — Python can be used in almost any type of application.
- Active community — Python has a large community of fellow developers writing software modules and providing help to newbies and other developers.
- Python is Interactive — You can actually sit at a Python prompt and interact with the interpreter directly to write your programs.
- Enhanced Readability — It provides enhanced readability. For that purpose, uniform indents are used to delimit blocks of statements instead of curly brackets, like in many languages such as C, C++ and Java.
- Standard distribution — Standard distribution of Python contains the Tkinter GUI toolkit, which is the implementation of popular GUI library called Tcl/Tk. An attractive GUI can be constructed using Tkinter. Many other GUI libraries like Qt, GTK, WxWidgets etc. are also ported to Python.
- Standard DB-API — A standard DB-API for database connectivity has been defined in Python. It can be enabled using any data source (Oracle, MySQL, SQLite etc.) as a backend to the Python program for storage, retrieval and processing of data.
- Integrated — It can be integrated with other popular programming technologies like C, C++, Java, ActiveX and CORBA.
What can Python do?
- Python can be used on a server to create web applications.
- Python can be used alongside software to create workflows.
- Python can connect to database systems. It can also read and modify files.
- Python can be used to handle big data and perform complex mathematics.
- Python can be used for rapid prototyping, or for production-ready software development.
- Python works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc).
- Python has a simple syntax similar to the English language.
- Python has syntax that allows developers to write programs with fewer lines than some other programming languages.
- Python runs on an interpreter system, meaning that code can be executed as soon as it is written. This means that prototyping can be very quick.
- Python can be treated in a procedural way, an object-orientated way or a functional way.
Good to know
The most recent major version of Python is Python 3, which we shall be using in this tutorial. However, Python 2, although not being updated with anything other than security updates, is still quite popular. In this tutorial Python will be written in a text editor. It is possible to write Python in an Integrated Development Environment, such as Thonny, Pycharm, Netbeans or Eclipse which are particularly useful when managing larger collections of Python files.
Python Syntax compared to other programming languages
Python was designed to for readability, and has some similarities to the English language with influence from mathematics.
Python uses new lines to complete a command, as opposed to other programming languages which often use semicolons or parenthesis.
Python relies on indentation using whitespace to define scopes, such as the scope of loops, functions and classes. Other programming languages often use curly-brackets for this purpose.
Who uses Python?
Some notable organizations and projects reportedly using Python include Google, Dropbox, Mozilla, IBM, Facebook, Yahoo, NASA, European Space Agency, the Large Hadron Collider at CERN, and many more.