Python Basic and Advance
Python Programming Language Fundamentals
=========================================================================
1)Introduction of Python Programming
Python is a high level, interpreted language which has easy syntax and dynamic semantics.
Python is much easier than other programming languages and helps you create beautiful applications with less effort and much more ease.
2)History of Python Language
Python laid its foundation in the late 1980s.
The implementation of Python was started in December 1989 by Guido Van Rossum at CWI in Netherland.
In February 1991, Guido Van Rossum published the code (labeled version 0.9.0) to alt.sources.
In 1994, Python 1.0 was released with new features like lambda, map, filter, and reduce.
Python 2.0 added new features such as list comprehensions, garbage collection systems.
On December 3, 2008, Python 3.0 (also called "Py3K") was released. It was designed to rectify the fundamental flaw of the language.
ABC programming language is said to be the predecessor of Python language, which was capable of Exception Handling and interfacing with the Amoeba Operating System.
The following programming languages influence Python:
ABC language.
Modula-3
3)Why name Python?
-There is a fact behind choosing the name Python. Guido van Rossum was reading the script of a popular BBC comedy series "Monty Python's Flying Circus". It was late on-air 1970s.
-Van Rossum wanted to select a name which unique, sort, and little-bit mysterious. So he decided to select naming Python after the "Monty Python's Flying Circus" for their newly created programming language.
-The comedy series was creative and well random. It talks about everything. Thus it is slow and unpredictable, which made it very interesting.
4)Features of Python language and its importance
1) Easy to Learn and Use
Python is easy to learn as compared to other programming languages. Its syntax is straightforward and much the same as the English language. There is no use of the semicolon or curly-bracket, the indentation defines the code block. It is the recommended programming language for beginners.
2) Expressive Language
Python can perform complex tasks using a few lines of code. A simple example, the hello world program you simply type print("Hello World"). It will take only one line to execute, while Java or C takes multiple lines.
3) Interpreted Language
Python is an interpreted language; it means the Python program is executed one line at a time. The advantage of being interpreted language, it makes debugging easy and portable.
4) Cross-platform Language
Python can run equally on different platforms such as Windows, Linux, UNIX, and Macintosh, etc. So, we can say that Python is a portable language. It enables programmers to develop the software for several competing platforms by writing a program only once.
5) Free and Open Source
Python is freely available for everyone. It is freely available on its official website www.python.org
. It has a large community across the world that is dedicatedly working towards make new python modules and functions. Anyone can contribute to the Python community. The open-source means, "Anyone can download its source code without paying any penny."
6) Object-Oriented Language
Python supports object-oriented language and concepts of classes and objects come into existence. It supports inheritance, polymorphism, and encapsulation, etc. The object-oriented procedure helps to programmer to write reusable code and develop applications in less code.
7) Extensible
It implies that other languages such as C/C++ can be used to compile the code and thus it can be used further in our Python code. It converts the program into byte code, and any platform can use that byte code.
8) Large Standard Library
It provides a vast range of libraries for the various fields such as machine learning, web developer, and also for the scripting. There are various machine learning libraries, such as Tensor flow, Pandas, Numpy, Keras, and Pytorch, etc. Django, flask, pyramids are the popular framework for Python web development.
9) GUI Programming Support
Graphical User Interface is used for the developing Desktop application. PyQT5, Tkinter, Kivy are the libraries which are used for developing the web application.
10) Integrated
It can be easily integrated with languages like C, C++, and JAVA, etc. Python runs code line by line like C,C++ Java. It makes easy to debug the code.
11. Embeddable
The code of the other programming language can use in the Python source code. We can use Python source code in another programming language as well. It can embed other language into our code.
12. Dynamic Memory Allocation
In Python, we don't need to specify the data-type of the variable. When we assign some value to the variable, it automatically allocates the memory to the variable at run time. Suppose we are assigned integer value 15 to x, then we don't need to write int x = 15. Just write x = 15.
5) Versions of Python
| Python Version | Released Date |
|---|---|
| Python 1.0 | January 1994 |
| Python 1.5 | December 31, 1997 |
| Python 1.6 | September 5, 2000 |
| Python 2.0 | October 16, 2000 |
| Python 2.1 | April 17, 2001 |
| Python 2.2 | December 21, 2001 |
| Python 2.3 | July 29, 2003 |
| Python 2.4 | November 30, 2004 |
| Python 2.5 | September 19, 2006 |
| Python 2.6 | October 1, 2008 |
| Python 2.7 | July 3, 2010 |
| Python 3.0 | December 3, 2008 |
| Python 3.1 | June 27, 2009 |
| Python 3.2 | February 20, 2011 |
| Python 3.3 | September 29, 2012 |
| Python 3.4 | March 16, 2014 |
| Python 3.5 | September 13, 2015 |
| Python 3.6 | December 23, 2016 |
| Python 3.7 | June 27, 2018 |
| Python 3.8 | October 14, 2019 |
• Toolchain of Python application
• First application in Python
• Data types in Python
• Variables and its types
• Operators and its types
• Bitwise operators and its working
• Memory allocation strategy used by Python
• Numbers in Python
• Input Output mechanisms
• Command line arguments
• Procedural programming approach in Python
• Function definition and function calling techniques
• Function arguments and its types
• Inner function and its calling techniques
• Returning multiple values from function
• Anonymous function and its use
• Default function arguments
• Required function argument
• Variable number of argument of function
• Keyword arguments of function
• Iterative approach using loops
• Iteration using for loop
• Use of break and continue keyword
• Iteration using while loop
• Recursive function approach
• Programs control using if, else, else if
• Array and its types
• Manipulate different types of array
• Creation and use of multidimensional array
• List in Python
• Dynamic input in List
• Range in python
• Tuples in Python
• String in Python
• Dictionaries and its use
• Manipulation of String
• File Handling
• File Reading Writing
• File creation and manipulation
Python Programming Language Advanced
• Module in Python
• Creation of user defined Module
• Multiprocessing application development
• Multitasking using thread
• Thread Synchronisation techniques
• Single threaded vs multithread application development
• Parallel programming in Python using Pool class
• Duck Typing in Python
• Decorators in Python
• Practical use of Decorators
• Lambda functions in python
• Filter Map Reduce concept in Python
• Exception handling
• Object Oriented programming in Python
• Concept of Encapsulation using Class
• Characteristics of class and its types
• Behaviours of class and its types
• Nested class and its use
• Use of self keyword
• Object creation
• Constructor and its types
• Abstraction in Python
• Polymorphism and its types
• Inheritance for reusability and its types
• Function Overloading technique
• Multiprocessing concept and its use
• Special variables in python
Comments
Post a Comment