Python
Jump to navigation
Jump to search
Welcome to the Python programming page. The Python language has evolved greatly over the year. Python 2 is nice for scripting and simpler tasks. Python 3 is a more substantial Object Oriented Programming Language. Most of the details herein will focus on Python 3. However, if there is any Python 2 examples included they will be designated as such. The reason for this is because there are a large number of syntax differences and each requires it's own interpreter. Python 2 has more complicated syntax than Python 3. Python 3 has an easier syntax compared to Python 2. A lot of libraries of Python 2 are not forward compatible. A lot of libraries are created in Python 3 to be strictly used with Python 3.
KEY DIFFERENCES
- Python 3 syntax is simpler and easily understandable whereas Python 2 syntax is comparatively difficult to understand.
- Python 3 default storing of strings is Unicode whereas Python 2 stores need to define Unicode string value with “u.”
- Python 3 value of variables never changes whereas in Python 2 value of the global variable will be changed while using it inside for-loop.
- Python 3 exceptions should be enclosed in parenthesis while Python 2 exceptions should be enclosed in notations.
- Python 3 rules of ordering comparisons are simplified whereas Python 2 rules of ordering comparison are complex.
- Python 3 offers Range() function to perform iterations whereas, In Python 2, the xrange() is used for iterations.
Basis of comparison | Python 3 | Python 2 |
---|---|---|
Release Date | 2008 | 2000 |
Function print | print (“hello”) | print “hello” |
Division of Integers | Whenever two integers are divided, you get a float value | When two integers are divided, you always provide integer value. |
Unicode | In Python 3, default storing of strings is Unicode. | To store Unicode string value, you require to define them with “u”. |
Syntax | The syntax is simpler and easily understandable. | The syntax of Python 2 was comparatively difficult to understand. |
Rules of ordering Comparisons | In this version, Rules of ordering comparisons have been simplified. | Rules of ordering comparison are very complex. |
Iteration | The new Range() function introduced to perform iterations. | In Python 2, the xrange() is used for iterations. |
Exceptions | It should be enclosed in parenthesis. | It should be enclosed in notations. |
Leak of variables | The value of variables never changes. | The value of the global variable will change while using it inside for-loop. |
Backward compatibility | Not difficult to port python 2 to python 3 but it is never reliable. | Python version 3 is not backwardly compatible with Python 2. |
Library | Recently, many developers are creating libraries which you can only use with Python 3. | Many older libraries created for Python 2 are not forward-compatible. |
Here, are prime reasons for using Python 3.x versions:
- Python 3 supports modern techniques like AI, machine learning, and data science.
- Python 3 is supported by a large Python developer’s community. Getting support is easy.
- It is easier to learn Python language compared to earlier versions.
- Offers Powerful toolkit and libraries
- Mixable with other languages
Python 2 vs. Python 3 Example Code
Python 3
def main(): print("Hello World!") if __name__== "__main__": main()
Python 2
def main(): print "Hello World!" if __name__== "__main__": main()