Introduction to Python Programming Language
Tags: python, programming, beginners
Published: 2023-03-25 12:31:22

## What is python?
Python programming language is an interpreted, object-oriented,high-level programming language.

<u>What does it mean by being interpreted?</u>

- Python is an interpreted language because the code is executed directly by a compiler without the need of compilation process that is the interpreter reads the source code line by line converts it into a bytecode which is then executed by the Python virtual machine.

<u>What does it mean by being object-oriented?</u>

- Python is an object-oriented language because it supports the object oriented principles which are encapsulation, inheritance and polymorphism.

<u>What does it mean by being a high level?</u>

- Python is a high level programming language because it is deigned to be human-readable, easy to understand, with its syntax similar to natural language.

## Advantages of python programming language

<u>Easy to learn.</u>

- Python programming is straightforward to use, with syntax similar to natural language.

<u>Increased productivity.</u>

- Python programming language syntax allows programmers to concentrate on solving real world problems rather than spending hours understanding its syntax.

<u>Flexibility.</u>

- Python programming language allows users to try new things, this allows developers to develop any sort of application using python programming language.

<u>Extensive Libraries.</u>

- Python programming language supports various libraries like for big data, web development, machine learning and artificial Intelligence.

<u>Extensive community.</u>

- Python has gained popularity over the years since its inception, this has led to many tutorials, documentation and developer communities that support beginner to expert level python developers.

## Disadvantages of python programming language

<u>Speed.</u>

- Since python is an interpreted language therefore the interpreter executes each line of code which time consuming compared to compiled languages like C programming language.

<u>Memory consumption.</u>

- Python being a dynamically typed language that flexible to data types makes it a high memory intensive language thus it is not a good choice to memory optimization tasks.

<u>Mobile Development.</u>

- Python not being a memory efficient, having prolonged processing power, this has led python having few libraries for mobile development.

<u>Simplicity</u>

- Python is an easy to use language,  which is due to its straightforward syntax and minimalistic design. However, this simplicity can also lead to a disadvantage where users become accustomed to the ease of Python and feel that other programming languages such as C++, C codes are irrelevant which can lead to failure in career modelling.

## Applications of python programming.

<u>Artificial Intelligence and Machine Learning.</u>

- Python has extensive libraries for AI and ML such as Pandas, TensorFlow, Sckit-learn. This libraries provide a wide range of support for data analysis, deep learning, machine learning and natural language processing.

<u>Automation.</u>

- Python is a well known language  for automation of tasks through use of libraries such as selenium for webscraping, also data cleaning tasks with the use of libraries such as Pandas, Numpy which transform raw data into structured data.

<u>DevOps</u>

- Python programming language can be used for services that require software development and IT operations. Python is used for scripting, automation and managing infrastructure.

<u>Web Development.</u>

- When it comes to web development, python is a great tool as it offers extensive support through web frameworks such as Django, Fast API, Flask, Pyramid which offer ease of integration with SQL databases such as postgreSQL and NoSQL databases such as MongoDB thus supporting development of server-side web applications.

<u>Game Development.</u>

- Python programming language supports development of games through use of libraries such as pygame which is used to develop 2D games, PyOpenGL library which is a wrapper around OpenGL for developing 3D games.