1. Python is Easy in two ways
When we say the word 'easy', we mean it in different contexts.
a. Easy to code
As we have seen in earlier lessons, Python is very easy to code. Compared to other popular languages like Java and C++, it is easier to code in Python. Anyone can learn python syntax in just a few hours. Though sure, mastering Python requires learning about all its advanced concepts and packages and modules. That takes time. Thus, it is programmer-friendly.
b. Easy to read
Being a high-level language, Python code is quite like English. Looking at it, you can tell what the code is supposed to do. Also, since it is dynamically-typed, it mandates indentation. This aids readability.
2. Python is Expressive
First, let's learn about expressiveness. Suppose we have two languages A and B, and all programs that can be made in A can be made in B using local transformations. However, there are some programs that can be made in B, but not in A, using local transformations. Then, B is said to be more expressive than A. Python provides us with a myriad of constructs that help us focus on the solution rather than on the syntax. This is one of the outstanding python features that tell you why you should learn Python.
3. It is Free and Open-Source
Secondly, it is open-source. This means that its source code is available to the public. You can download it, change it, use it, and distribute it. This is called FLOSS(Free/Libre and Open Source Software). As the Python community, we're all headed toward one goal- an ever-bettering Python.
4. Python is a High- Level Language
As we discussed in point 2b, it is a high-level language. This means that as programmers, we don't need to remember the system architecture. Nor do we need to manage the memory. This makes it more programmer-friendly and is 1 of the key python features.
5. Python Is Portable
Let's assume you've written a Python code for your Windows machine. Now, if you want to run it on a Mac, you don't need to make changes to it for the same. In other words, you can take one code and run it on any machine, there is no need to write different code for different machines. This makes Python a portable language. However, you must avoid any system-dependent features in this case.
6. It is an Interpreted Language
If you're any familiar with languages like C++ or Java, you must first compile it, and then run it. But in Python, there is no need to compile it. Internally, its source code is converted into an immediate form called bytecode. So, all you need to do is to run your Python code without worrying about linking to libraries, and a few other things.
By interpreted, we mean the source code is executed line by line, and not all at once. Because of this, it is easier to debug your code. Also, interpreting makes it just slightly slower than Java, but that does not matter compared to the benefits it has to offer.
7. Python Language is Object-Oriented
A programming language that can model the real world is said to be object-oriented. It focuses on objects and combines data and functions. Contrarily, a procedure-oriented language revolves around functions, which are code that can be reused. Python also supports multiple inheritances, unlike Java. A class is a blueprint for such an object. It is an abstract data type and holds no values.
8. Python is Extensible
If needed, you can write some of your Python code in other languages like C++. This makes Python an extensible language, meaning that it can be extended to other languages.
9. It is Embeddable
We just saw that we can put a code in other languages in our Python source code. However, it is also possible to put our Python code in source code in a different language like C++. This allows us to integrate scripting capabilities into our program of the other language.
10. It had Large Standard Library
Python downloads with a large library that you can use so you don't have to write your own code for every single thing. There are libraries for regular expressions, documentation-generation, unit-testing, web browsers, threading, databases, CGI, email, image manipulation, and a lot of other functionality.
11. Python can be used for GUI Programming
You can use Tk to create basic GUIs.
12. Python is Dynamically Typed
Python is dynamically-typed. This means that the type for value is decided at runtime, not in advance. This is why we don't need to specify the type of data while declaring it.