Python

From Cordovawiki
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.

Python Programming Language

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()


When it comes to Python 2 vs Python 3 differences today, Python 3 version is the outright winner. That’s because Python 2 won’t be available after 2020. Mass Python 3 adoption is the clear direction of the future.

After considering declining support for Python 2 programming language and added benefits from upgrades to Python 3, it is always advisable for a new developer to select Python version 3. However, if a job demands Python 2 capabilities, that would be an only compelling reason to use this version.

Summary

  • Python 2 made code development process easier than earlier versions. It implemented technical details of Python Enhancement Proposal (PEP). Python 2.7 (last version in 2.x ) is no longer under development and in 2020 will be discontinued.
  • Python 3 is a newer version of the Python programming language which was released in December 2008. This version was mainly released to fix problems that exist in Python 2. The nature of these changes is such that Python 3 was incompatible with Python 2. It is backward incompatible.
  • In Python 2, Rules of ordering comparisons have been simplified.
  • In Python 3, Rules of ordering comparisons are very complex.
  • When it comes to Python 2 vs 3 differences today, Python 3 version is the outright winner.

Math Operators from Highest to Lowest Precedence

Operator Operation Example Evaluates to . . .
** Exponent 2 ** 3 8
% Modulus/remainder 22 % 8 6
// Integer division/floored quotient 22 // 8 2
/ Division 22 / 8 2.75
* Multiplication 3 * 5 15
- Subtraction 5 - 2 3
+ Addition 2 + 2 4
Math Example