Python Programming Notes – Modules 1 & 2
Module 1: Introduction to Python (Pages 1–16)
1. Why Learn Programming?
Programming allows you to solve problems creatively and efficiently. It helps automate tasks, develop
applications, and opens up vast career opportunities in technology.
2. Computer Architecture Basics
• CPU (Central Processing Unit): Executes instructions.
• Main Memory (RAM): Temporarily stores data while the computer is running.
• Secondary Memory: Used for long-term storage (e.g., hard drives).
• Input/Output Devices: Allow interaction with the computer (keyboard, mouse, monitor, printer,
etc.).
3. What is a Program?
A program is a sequence of instructions that tells a computer what to do.
4. The Python Interpreter
• Interactive Mode: Uses the >>> prompt for direct execution.
• Interpreter vs Compiler:
• Interpreter: Executes line-by-line.
• Compiler: Translates entire code into machine language before execution.
5. Writing and Running a Script
• Create a file with a .py extension.
• Run from command line using: python [Link] .
6. Basic Building Blocks of Programs
• Input: Getting data (e.g., from keyboard or file).
• Output: Displaying results.
• Execution Flow:
• Sequential: Step-by-step.
• Conditional: Decision-based (if statements).
• Repeated: Loops or repeated actions.
1
7. Basic Python Syntax
• Values & Types:
• int → Integer
• float → Decimal number
• str → String (text)
• Variables: Used to store data. Example: message = 'Hello'
• Variable Naming Rules: Must begin with a letter or underscore; no spaces.
• Keywords: Reserved words that cannot be used as variable names (e.g., if , for , while ).
8. Operators and Expressions
• Arithmetic Operators: + , - , * , / , ** (exponentiation)
• Order of Operations (PEMDAS): Parentheses → Exponentiation → Multiplication/Division →
Addition/Subtraction
• Modulus Operator (%): Finds remainder.
• String Operations: Concatenation using + .
9. User Input
Use input() to get data from the user. Example: name = input('Enter your name: ')
10. Comments
Use # to add notes that are ignored by Python.
11. Debugging
• Syntax Errors: Grammar mistakes in code.
• Runtime Errors: Errors while the program is running.
• Semantic Errors: Code runs but gives wrong output.
Module 2: Conditional Execution and Functions (Pages 17–32)
1. Boolean Expressions
Expressions that evaluate to True or False.
2. Comparison Operators
== , != , > , < , >= , <=
2
3. Logical Operators
and , or , not → Used to combine boolean expressions.
4. Conditional Execution
• if Statement: Executes block if condition is true.
• if-else Statement: Executes one block if true, another if false.
• if-elif-else: Handles multiple conditions.
• Nested Conditionals: if statements inside another.
5. Exception Handling (try and except)
Prevents crashes when unexpected errors occur.
try:
x = int(input("Enter a number: "))
except:
print("Invalid input!")
6. Short-Circuit Evaluation
Python stops evaluating as soon as the final result is known. Guardian Pattern: Prevents errors by
checking conditions safely.
7. Functions
• Function Calls: Executes a predefined block of code.
• Built-in Functions: type() , max() , min() , len() .
• Type Conversion: int() , float() , str() .
• Math Module: import math → [Link](16) .
• Random Module: import random → [Link](1,10) .
8. Defining New Functions
Use def keyword to create custom functions.
def greet():
print("Hello!")
3
9. Flow of Execution
Statements execute in order of appearance; functions are run when called.
10. Parameters and Arguments
• Parameter: Variable inside the function.
• Argument: Value passed when calling the function.
11. Fruitful vs Void Functions
• Fruitful: Returns a value (e.g., [Link](5) ).
• Void: Performs an action but returns nothing (e.g., print() ).
12. The return Statement
Used to send a value back to the caller.
def add(a, b):
return a + b
13. Why Use Functions?
• Code Reuse
• Readability
• Easier Debugging
• Modularity
End of Notes for Modules 1 & 2 – Python Programming Basics