Python is a powerful high-level, object-oriented scripting language created by Guido van Rossum in 1991. It has a wide range of applications from web development, data science, creating software prototypes, to scientific and mathematical computing, and so on. It provides high-level inbuilt data structures and dynamic typing and dynamic binding, making it very comfortable for Rapid Application Building.
Python has a simple, easy-to-learn syntax. Unlike most of the programming languages that use punctuation in syntax, syntax involves a lot of English keywords and this makes an excellent and highly readable language. Because of this, it is a very popular first choice for beginners. Also, supports the use of packages and modules, which encourages program modularization and the reuse of previously written codes.
interpreter and the extensive standard library are available for free in source or binary form for all platforms and can be distributed freely.
Python is what is known as object-oriented programming or OOP for short. It is an interpreted language highly interactive and is perfect for beginners or for those who are experienced in other programming languages. Indeed, those who have learned to program in C language will spot straight away that there are an awful lot of similarities between C and Python.
The highlights of Features this language :
- Easy to read.
- Simple to learn.
- Easy maintenance.
- An excellent standard library.
- Fully interactive.
- Portable and extendable.
- Packed with databases.
- Excellent GUI programming.
- High Level
- Easy to Write
- Object Oriented
- Free and open source
History of Python
The origins of Python go back to December 1989. The creator was Guido van Rossum, and it was begun as a hobby. Rather than being named after the constrictor snake, actually got its name from Monty Python’s Flying Circus, the famous British comedy troupe of the eighties.
It came from a project that van Rossum worked on at the Dutch CWI research institute—the ABC language—a project that was terminated and from the Amoeba operating system. The main strength of the new language was the ease of which it was easy to extend and that it could support multiple platforms. This was vital in the days when personal computers were starting to become popular and because could communicate with a wide variety of libraries and file formats, it soon took off. Throughout the nineties, grew and more functional programming tools were added.
It also played a pivotal role in van Rossum’s new initiative, Computer Programming for everybody. The idea behind CP4E was to make programming accessible to everybody, not just the selected few, and to encourage basic computer and coding literacy as essential skills besides those of English and math. Because of such a clean syntax and is easy to read and access, it is now the language of choice for beginners.
Throughout the nineties, as continued growing, users were concerned that it was entirely dependent on van Rossum keeping it going. What would happen to Python if something happened to van Rossum?
The solution was to make open-source, available to all, and to facilitate that Python 2.0 was released in 2000 by the BeOpen Labs team, with the idea of making it more community-oriented and a lot more transparent in the development process. Its repository was moved over to SourceForge, giving more people “Write” access to the CVS tree and a much easier way for bugs to be reported and patches submitted. Today, we still use Python 2.7 and it will continue to receive support until 2020. Indeed, there will be no 2.8; instead, the focus will be on Python 3, the new member of the family.
Python 3 was finally born in 2008, not just an update but a complete overhaul. Surprisingly, there would be no backward compatibility, which meant developers would have to choose and use just one. With Python 3, the idea was to clean up the house to remove duplicate models and constructions and ensure that there was one obvious way of doing something. Despite the introduction of tools like “2to3,” which would identify things in Python 2 code that had to be changed to work in Python 3, many users opted to stick with what they knew best. Even today, many years after Python 3 was released, there should be no assumption made that programmers would be using the later version.
What version of Python?
As an interpreted language, some significant advantages over other programming languages. One of the key advantages is the ability to grow and change as computing needs change. Much like any desktop application, the continued development allows for new features to be included in the language, as well as the refinement of existing features that ultimately makes the language easier to use.
This process of adding and refining features necessitates that released in versions much like any desktop application would.
There are two main branches available at this time, Python 2.x and Python 3.x. While the core language has not changed fundamentally, there are enough differences between the two that their code is not compatible.
Let’s take a brief look at some of the differences and why you may choose using one version over the other.
The python 2.x branch was originally released in 2000 and has seen extensive improvements since then. The current version as of this writing is 2.7.15. The 2.7 version was released in 2010 and is the final version in the 2.x series. Even though there is no further development planned for version 2.7 there may be some reasons you would still want to use it.
The first reason is the old adage that “if it isn’t broken then don’t fix it”. In other words, if you are familiar with version 2.x, have it installed on your computers, have existing content up and running, and it does everything that you need to do, then there is no real need to change.
Finally, there are a number of third party packages and libraries which are commonly used to extend the capabilities of both the 2.x and 3.x branches. Some of these items lack a 3.x compatible version.
If you need to use a specific package or library for your application and it is only available for version 2.x, then your only options are to stick to programming in version 2.x, port the component to a 3.x compatible version or recreate the functionality from scratch. The latter two options can often be prohibitive in both cost and time spent, necessitating that version 2.x be used for the project.
If you decide that version 2.x is the best option for your project, it is still advantageous to learn the differences between 2.x and 3.x and follow accepted best programming practices. If you do that, then the majority of your 2.x code may work with little to no modification in a 3.x environment.
Additionally, if modification is necessary then those modifications will likely be smaller and porting to 3.x will be less time consuming should it become necessary in the future.
The python 3.x branch was originally released in 2008 and has seen extensive improvements since then. The current version as of this writing is 3.6.5. The 3.x branch is the current version which continues to be developed.As the current version and the future of the language, it is suggested that new development be done using this version. I
t is also recommended that older programming which is expected to be maintained for future use be ported to this version if possible. Because Python 3 is the current and future of the language, most examples provided here will be in Python 3.
Why use Python?
Python is popular for its simple and comparatively straightforward syntax. The readability that it provides also increases productivity as it allows us to focus more on the idea rather than structuring the code.
Python is very important for students and professionals trying to become Software Engineers especially if they have interests in Web Development Domain.
Listed below are some of the key advantages of learning Python:
Python is an Interpreted Language
Processed at runtime by the interpreter. You do not need to compile the whole program before executing it. This is like PERL and PHP.
Python is an Interactive Language
You can use a Python prompt to interact with the interpreter directly while writing programs.
Python is an object-oriented Language
Python supports an Object-Oriented technique of programming that encapsulates code within objects and provides effective problem-solvi
Popular language for beginners and supports the development of a wide range of applications from simple text processing to World Wide Web browsers to games.
Debugging in Python is easy
A bug or bad input will never cause a segmentation fault. Instead, when the interpreter discovers an error while debugging, it raises an exception. If the program doesn’t catch the exception, the interpreter prints a stack trace. A debugger allows inspection of local as well as global variables, evaluation of arbitrary expressions, setting breakpoints, stepping through one line of code at a time, and so on.
What are the Python Reserved words/keywords?
The words which are reserved to represent some meaning are functionality, such types of words called reserved words. contains
List of 33 reserved words
True, False, None ,and, or, not, is, if, elif, else, while, for, break, continue, return, in yield, try, except, finally, raise, assert, import, from, as, class, def, pass, global, nonlocal, lambda, del, with.
- All 33 contents only alphabets symbols
- Except the following all contains only lower case alphabets symbols
True, False, None
Python Tools and Frameworks
Django, Flask ,Pyramid, Tornado, Wespy, Bottle, CherryPy, Bottom line, Grok, Turbo Gears, Web2py,
Scientific And Numeric
Scipy, Pandas, i Python, Matplotlib,Tensorflow, Mipy, Cubes, Astropy
Buildbot, trac, Roundup
Ansible, Salt, Openstack
Tkinter, PyGobject, PyQt5, Kivy, Pyforms, wax, Pyside2, Wxpython, Blue Bream, Quixote
Where to use python?
- Data Science
- Machine Learning
- Web development
- Game development
- Image processing
- Embedded Systems and Iot
- Android apps
- Automated Jobs
- Rapid development tool
Which company is using python?
Google, Amazon, Facebook, Instagram, Tesla, Netflix, Uber, Pinterest Spotify, Quora, Dropbox, Reddit, instacart, Lyft, even NASA, and ISRO also using too.