Learn Python programming from basic to advanced step by step in 2024

Learn Python programming from basic to advanced step by step in 2024

Hey there! Welcome to the world of Python programming! This is going to be our starting post on Python programming, and from here we will continue to cover everything from 0 to advanced-level topics and projects. In this post, we explain about the Python programming language. This is our first post for Introduction to Python Programming.


Learn Python programming from basic to advanced step-by-step in 2024
Are you prepared to begin your Python journey? Now let’s move!

1. What is Python programming?

Python is a high-level, interpreted programming language known for its simplicity and readability. It was created by Guido van Rossum and first released in 1991.

Python emphasizes code readability and simplicity, making it an excellent choice for beginners and experienced programmers alike.

Python supports multiple programming paradigms, including procedural, object-oriented, and functional programming. It has a large standard library that provides ready-to-use modules and functions for various tasks, making it highly versatile and suitable for a wide range of applications.


Benefits of Learning Python in 2024:

Easy to learn: Python has a simple and easy-to-understand syntax, making it an ideal choice for beginners. Its readability and concise syntax reduce the learning curve, allowing newcomers to quickly grasp programming concepts and start writing code.

Versatility: Python is a versatile language used in various fields, including web development, data science, artificial intelligence, machine learning, automation, scientific computing, and more. Learning Python opens up opportunities in multiple domains, giving you the flexibility to explore different career paths.

Large and Active Community: Python has a vast and active community of developers, enthusiasts, and contributors. This community provides extensive documentation, tutorials, forums, and resources, making it easier to find help, collaborate on projects, and stay updated on the latest trends and developments in the Python ecosystem.

High Demand in the Job Market: Python is one of the most popular programming languages worldwide and is in high demand across various industries. Many companies, from startups to tech giants, use Python for web development, data analysis, machine learning, automation, and more. Learning Python increases your employability and opens doors to a wide range of job opportunities.

Rich Ecosystem of Libraries and Frameworks: Python has a rich ecosystem of libraries and frameworks that simplify development and accelerate project delivery. For example, Django and Flask are popular frameworks for web development, NumPy and pandas are widely used for data analysis; TensorFlow and PyTorch are prominent libraries for machine learning and deep learning; and so on. Leveraging these libraries and frameworks allows you to build powerful and efficient solutions with minimal effort.

Cross-Platform Compatibility: Python is a cross-platform language, meaning you can write code once and run it on multiple platforms, including Windows, macOS, and Linux. This cross-platform compatibility reduces development time and ensures that your applications can reach a broader audience.


2. Python Syntax:

Python has a clean and easy-to-understand syntax, which makes it popular among both beginners and experienced programmers.

Here’s an overview of Python syntax:

I. Indentation:

Unlike many other programming languages that use braces ‘{} ‘or keywords like ‘begin ‘ and ‘end‘ to denote blocks of code, Python uses indentation to indicate blocks. Code blocks are indented with a consistent number of spaces (typically four) to show their relationship to the surrounding blocks.

Indentation (whitespace at the beginning of a line) is used to define code blocks.

Example:

II. Comments

Comments are used to explain code and are ignored by the Python interpreter.
In Python, there are two types of comments: single-line comments and multi-line comments.

Single-line comments start with the # symbol, while multi-line comments are enclosed within triple quotes (''' or """).

Example:

III. Variables:

A variable in Python is a name that refers to a value. We can think of a variable as a container that holds data.

Variables are used to store information that Python programs can manipulate.

Here’s how we can create a variable in Python:

variable_name = value

“variable_name”: This is the name of the variable. It can be any combination of letters, numbers, and underscores, but it cannot start with a number.

“value”: This is the data that the variable holds. It can be any data type in Python.

# Here, 'x' is the variable name, and 5 is the value assigned to it.
x = 5 
# Here, 'name' is the variable name, and "John" is the value assigned to it.
name = "John"

IV. Data Types:

Python has several built-in data types, each serving a different purpose.
Some of the most common data types in Python include:

i. Integer (int): Used to represent whole numbers.
Example: 5, -10, 2024.

age = 5
temperature = -10
current_year = 2024

ii. Float (float): Used to represent decimal numbers.
Example: 5.5, 50.5,0.333.

height = 5.5
weight = 50.5
distance = 0.333

iii. String (str): Used to represent text, enclosed within single (') or double (") quotes.
Example: 'hello', "world".

a = 'hello'
b = "world"

iv. Boolean (bool): Used to represent True or False values.
Example: True, False.

is_student = True
is_raining = False

v. List (list): Used to store a collection of items.
Example: [1, 2, 3], ['apple', 'banana', 'orange'].

num = [1, 2, 3]
fruits = ['apple', 'banana', 'orange']

vi. Tuple (tuple): Similar to lists but immutable (cannot be changed).
Example: (1, 2, 3), ('a', 'b', 'c').

num = (1, 2, 3)
strings = ('a', 'b', 'c')

vii. Dictionary (dict): Used to store key-value pairs.
Example: {'name': 'John', 'age': 30}.

dict = {'name': 'John', 'age': 30}

V. Printing Output:

We can display output to the console using the print() function.

Example:

print("Hello, World!")
strr = "Hello, World!"
print(strr)

VI. Input from User:

We can prompt the user to enter input using the input() function.

Example:

name = input("Enter your name: ")
print("Hello,", name)

VII. Conditional Statements:

Python supports conditional statements such as if, elif, and else for decision-making.

Example:

x = 10
if x > 0:
    print("x is positive")
elif x == 0:
    print("x is zero")
else:
    print("x is negative")

VIII. Loops:

Python provides for and while loops for iteration.

Example:

# For loop
for i in range(5):
    print(i)
# While loop
x = 0
while x < 5:
    print(x)
    x += 1

IX. Functions:

Functions are reusable blocks of code that perform a specific task. You can define functions using the def keyword.

Example:

def greet(name):
    print("Hello,", name)
greet("Alice")

X. Statements:

A statement is a complete instruction that the Python interpreter can execute. Statements can span multiple lines, but each line typically contains one statement.

Example:

print("Hello, World!")
x = 5  # Assignment statement

3. Python Operators:

An operator is a symbol that represents a specific operation or action to be performed on one or more operands.

Operator: An operator is a symbol or keyword that performs a specific operation on one or more operands.
For example, in x + y , ‘+’ is the operator.

Operand: An operand is a value or variable manipulated by an operator.
For example, in x + y , ‘x’ and ‘y’ are operands.

I. Arithmetic Operators:

Arithmetic operators are used to perform mathematical operations on numbers.
Python supports the following arithmetic operators:

i. Addition ‘+’ : Adds two numbers.

The addition operator + is used to add two numbers together.

Example:

    x = 6
    y = 5
    result = x + y
    print(result)
output: 11

ii. Subtraction ‘-‘ : Subtracts one number from another.

The subtraction operator ‘-‘ is used to subtract one number from another.

Example:

    x = 10
    y = 7
    result = x - y
    print(result)
output: 3

iii. Multiplication ‘*’ : Multiplies two numbers.

The multiplication operator * is used to multiply two numbers.

Example:

x = 3
y = 4
result = x * y
print(result)
output: 12

iv. Division ‘/’ : Divides one number by another.

The division operator / is used to divide one number by another. It returns a floating-point result.

Example:

x = 10
y = 2
result = x / y
print(result)
output: 5.0

v. Integer Division ‘//’ : Divides one number by another and returns the integer part of the result (rounded down).

Example:

x = 29
y = 5
result = x // y
print(result)
output: 5

vi. Modulus ‘%’ : The modulus operator % returns the remainder of the division of one number by another.

Example:

x = 10
y = 3
result = x % y
print(result)
output: 1

vii. Exponentiation ‘**’ :

The exponentiation operator ** raises one number to the power of another.

Example:

x = 2
y = 3
result = x ** y
print(result)
output: 8

II. Comparison Operators:

Comparison operators are used to compare values and return a Boolean result (True or False).
Python supports the following comparison operators:

i. Equal to ‘==’ :

The equal to operator ” == ” checks if two values are equal.

Example:

x = 5
y = 5
result = x == y
print(result)
output: True


x = 6
y = 5
result = x == y
print(result)
output: False

ii. Not Equal to ‘!=’ :

The not equal to operator ” != ” checks if two values are not equal.

Example:

x = 4
y = 3
result = x != y 
print(result)
output: True


x = 3
y = 3
result = x != y
print(result)
output: False

iii. Greater than ‘>’ :

The greater than operator ” > ” checks if one value is greater than another.

Example:

x = 4
y = 5
result = x > y
print(result)
output: False

iv. Greater than equal to ‘>=’ :

The greater than or equal to operator ” >= ” checks if one value is greater than or equal to another.

Example:

x = 5
y = 5
result = x >= y
print(result)
output: True

v. Less than ‘<‘ :

The less-than-operator ‘<‘ checks if one value is less than another.

Example:

x = 3
y = 5
result = x < y
print(result)
output: True

vi. Less than or equal to ‘<=’ :

The less than or equal to operator ‘<=‘ checks if one value is less than or equal to another.

Example:

x = 5
y = 5
result = x <= y
print(result)
output: True

III. Logical Operators:

Logical operators are used to combine multiple conditions and evaluate whether a given condition is True or False.
Python supports the following logical operators:

i. Logical AND ‘and’ :

The logical AND operator (and) returns True if both conditions are True, otherwise False.

# Both conditions are True
x = 5
y = 3
result = (x > 0) and (y < 5)
print(result)
output: True


# One condition is False
x = 5
y = 3
result = (x > 0) and (y > 5)
print(result)
output: False

ii. Logical OR ‘or’ :

The logical OR operator (or) returns True if at least one condition is True, otherwise False.

# One condition is True
x = 5
y = 9
result = (x > 0) or (y < 5)
print(result)
output: True


# Both conditions are False
x = 5
y = 9
result = (x < 0) or (y > 10)
print(result)
output: False


# Both condition is True
x = 5
y = 9
result = (x > 0) or (y < 8)
print(result)
output: True

iii. Logical NOT ‘not’ :

The logical NOT operator (not) returns the opposite of the condition’s result. If the condition is True, it returns False, and vice versa.

# Condition is True
x = 5
result = not(x < 0)
print(result)
output: True
# Condition is False
x = 5
result = not(x > 0)
print(result)
output: False

IV. Assignment Operators:

Assignment operators are used to assign values to variables.
Python supports the following assignment operators:

i. Simple Assignment ‘=’ :

The simple assignment operator (=) assigns the value on the right to the variable on the left.

x = 5

ii. Addition Assignment ‘+=’ :

The addition assignment operator (+=) adds the value on the right to the variable on the left and assigns the result to the variable.

x = 5
x += 10
print(x)
output: 15

iii. Subtraction Assignment ‘-=’ :

The subtraction assignment operator (-=) subtracts the value on the right from the variable on the left and assigns the result to the variable.


x = 5
x -= 4
print(x)
output: 1

iv. Multiplication Assignment ‘*=’ :

The multiplication assignment operator (*=) multiplies the variable on the left by the value on the right and assigns the result to the variable.

x = 5
x *= 4
print(x)
output: 20

v. Division Assignment ‘/=’ :

The division assignment operator (/=) divides the variable on the left by the value on the right and assigns the result to the variable.

x = 10
x /= 2
print(x)
output: 5.0

vi. Modulus Assignment ‘%=’ :

The modulus assignment operator (%=) computes the modulus of the variable on the left by the value on the right and assigns the result to the variable.

x = 10
x %= 3
print(x)
output: 1

vii. Exponentiation Assignment ‘**=’ :

The exponentiation assignment operator (**=) raises the variable on the left to the power of the value on the right and assigns the result to the variable.

x = 5
x **= 3
print(x)
output: 125

viii. Floor Division Assignment ‘//=’ :

The floor division assignment operator (//=) performs integer division of the variable on the left by the value on the right and assigns the result to the variable.

x = 10
x //= 3
print(x)
output: 3

V. Bitwise Operators:

Bitwise operators are used to perform bitwise operations on integers.
These operators treat numbers as sequences of binary digits (bits) and operate on them bit by bit. Python supports the following bitwise operators:

i. Bitwise AND ‘&’ :

The bitwise AND operator (&) performs a bitwise AND operation on the corresponding bits of two integers. It returns 1 if both bits are 1, otherwise 0.

x = 5  
# Binary: 0b0101

y = 3  
# Binary: 0b0011

result = x & y
print(result)  

# Output: 1 (Binary: 0b0001)

ii. Bitwise OR ‘|’ :

The bitwise OR operator (|) performs a bitwise OR operation on the corresponding bits of two integers. It returns 1 if at least one of the bits is 1, otherwise 0.

x = 5  
# Binary: 0b0101
y = 3  
# Binary: 0b0011
result = x | y
print(result)  
# Output: 7 (Binary: 0b0111)

iii. Bitwise XOR ‘^’ :

The bitwise XOR operator (^) performs a bitwise XOR (exclusive OR) operation on the corresponding bits of two integers. It returns 1 if the bits are different, otherwise 0.

x = 5  
# Binary: 0b0101
y = 3  
# Binary: 0b0011
result = x ^ y
print(result)  
# Output: 6 (Binary: 0b0110)

iv. Bitwise NOT ‘~’ :

The bitwise NOT operator (~) performs a bitwise NOT (complement) operation on an integer. It inverts all the bits of the integer.

x = 5  
# Binary: 0b0101
result = ~x
print(result)  
# Output: -6 (Binary: -0b0110)

v. Left Shift ‘<<‘ :

The left shift operator (<<) shifts the bits of a number to the left by a specified number of positions. Zeros are shifted in from the right.

x = 5  
# Binary: 0b0101
result = x << 1
print(result)  
# Output: 10 (Binary: 0b1010)

vi. Right Shift ‘>>’ :

The right shift operator (>>) shifts the bits of a number to the right by a specified number of positions. Zeros are shifted in from the left.

x = 5  
# Binary: 0b0101
result = x >> 1
print(result)  

# Output: 2 (Binary: 0b0010)

Next post

If-elif-else, for loops and while loops.

This Post Has One Comment

  1. Kylee Newman

    I am not sure where you’re getting your info, but good topic. I needs to spend some time learning much more or understanding more. Thanks for magnificent info I was looking for this information for my mission.

Leave a Reply