Learn Python Programming
Start with getting started, installation, and core basics. Clear explanations and practical examples to help you learn faster.
Python Numbers and Mathematics
Python handles numbers intuitively with no size limits on integers, full floating-point support, and a rich math module for advanced calculations.
Number Types
# Integers (no size limit!)
small = 42
big = 10 ** 100 # googol — Python handles this natively
negative = -256
binary = 0b1010 # 10
hexadecimal = 0xFF # 255
# Floats (64-bit double precision)
pi = 3.14159
tiny = 1.5e-10 # 0.00000000015
large = 2.5e6 # 2500000.0
# Complex numbers
z = 3 + 4j
print(z.real) # 3.0
print(z.imag) # 4.0
print(abs(z)) # 5.0 (magnitude)
Arithmetic Operations
a, b = 17, 5
print(a + b) # 22 addition
print(a - b) # 12 subtraction
print(a * b) # 85 multiplication
print(a / b) # 3.4 true division (always float)
print(a // b) # 3 floor division (integer result)
print(a % b) # 2 modulus (remainder)
print(a ** b) # 1419857 exponentiation
# divmod returns both quotient and remainder
q, r = divmod(17, 5)
print(f"17 ÷ 5 = {q} remainder {r}") # 3 remainder 2
# Absolute value
print(abs(-42)) # 42
Built-in Math Functions
# Rounding
print(round(3.14159, 2)) # 3.14
print(round(2.5)) # 2 (banker's rounding!)
print(round(3.5)) # 4
# Min, max, sum
numbers = [5, 2, 8, 1, 9]
print(min(numbers)) # 1
print(max(numbers)) # 9
print(sum(numbers)) # 25
# Power and absolute
print(pow(2, 10)) # 1024
print(pow(2, 10, 100)) # 24 (2^10 mod 100 — efficient!)
# int() truncates toward zero
print(int(3.7)) # 3
print(int(-3.7)) # -3
The math Module
import math
# Constants
print(math.pi) # 3.141592653589793
print(math.e) # 2.718281828459045
print(math.inf) # infinity
print(math.nan) # Not a Number
# Common functions
print(math.sqrt(144)) # 12.0
print(math.pow(2, 10)) # 1024.0
print(math.log(100, 10)) # 2.0 (log base 10)
print(math.log2(1024)) # 10.0
print(math.ceil(3.2)) # 4 (round up)
print(math.floor(3.8)) # 3 (round down)
print(math.factorial(5)) # 120
# Trigonometry (in radians)
print(math.sin(math.pi / 2)) # 1.0
print(math.cos(0)) # 1.0
print(math.degrees(math.pi)) # 180.0
print(math.radians(90)) # 1.5707...
# Greatest common divisor and least common multiple
print(math.gcd(12, 8)) # 4
print(math.lcm(4, 6)) # 12 (Python 3.9+)
Random Numbers
import random
# Random float between 0 and 1
print(random.random()) # e.g., 0.7234...
# Random integer in range [a, b] inclusive
print(random.randint(1, 100)) # e.g., 42
# Random choice from a sequence
colors = ["red", "green", "blue"]
print(random.choice(colors)) # e.g., "green"
# Shuffle a list in place
deck = list(range(1, 53))
random.shuffle(deck)
# Sample without replacement
lottery = random.sample(range(1, 50), 6)
print(sorted(lottery)) # e.g., [3, 12, 24, 31, 39, 45]
Floating Point Precision
# Floating point is NOT exact
print(0.1 + 0.2) # 0.30000000000000004
print(0.1 + 0.2 == 0.3) # False!
# Solution 1: round for display
print(round(0.1 + 0.2, 1) == 0.3) # True
# Solution 2: math.isclose for comparison
print(math.isclose(0.1 + 0.2, 0.3)) # True
# Solution 3: Decimal for financial calculations
from decimal import Decimal
price = Decimal("19.99")
tax = Decimal("0.08")
total = price * (1 + tax)
print(total) # 21.5892 (exact)
- Python integers have no size limit — they grow as large as memory allows.
- Use
//for integer division and/for true (float) division. - Use
Decimalfor money/financial calculations to avoid float precision errors. - Use
math.isclose()instead of==when comparing float results. - The
randommodule is for general use; for security usesecretsmodule.
Frequently Asked Questions
Answers to common Python getting-started questions
Python Programming Tutorial — Learn Python from Scratch
Python is the world's most popular programming language for beginners, data science, AI/ML, web development, and automation. This tutorial teaches Python step-by-step with clear explanations and runnable code examples. You can try every example in our free Python Compiler without installing anything.
Each topic builds on the previous one, starting from installation and Hello World through advanced concepts like decorators, generators, and file I/O. Whether you are a complete beginner or refreshing specific skills, every page gives you immediately usable code.
What This Tutorial Covers
- Getting Started: Install Python, run online, Hello World
- Basics: Variables, data types, type conversion, input/output
- Operators: Arithmetic, comparison, logical, assignment
- Control Flow: if/elif/else, for loops, while, break/continue
- Data Structures: Lists, tuples, sets, dictionaries
- Strings: Methods, slicing, formatting, f-strings
- Functions: Parameters, return values, *args, **kwargs, scope
- OOP: Classes, objects, inheritance, polymorphism
- File I/O: Reading, writing, CSV, JSON handling
- Exceptions: try/except, custom exceptions, raise
- Advanced: List comprehensions, lambda, generators, decorators
- Modules: import, pip, packages, __name__ == "__main__"
Why Learn Python in 2026?
- #1 most popular language: Ranked first on TIOBE, Stack Overflow, and GitHub for multiple years running.
- AI and Data Science: The primary language for machine learning (TensorFlow, PyTorch, scikit-learn), data analysis (Pandas, NumPy), and AI development.
- Web development: Django and Flask power backends at companies like Instagram, Spotify, and Pinterest.
- Automation: Automate files, emails, web scraping, reports, and system administration tasks in minutes.
- Beginner-friendly: Clean syntax with enforced indentation makes code readable from day one — no curly braces or semicolons.
- Massive job market: Python developers are in high demand across tech, finance, healthcare, and research.
Python vs Other Languages
| Feature | Python | Java | JavaScript | C++ |
|---|---|---|---|---|
| Syntax | Very clean, readable | Verbose | Moderate | Complex |
| Typing | Dynamic, strong | Static, strong | Dynamic, weak | Static, strong |
| Speed | Slower (interpreted) | Fast (JIT) | Fast (V8 JIT) | Fastest (native) |
| Best For | AI/ML, data, automation | Enterprise, Android | Web frontend/backend | Systems, games |
| Learning Time | 2–4 weeks basics | 4–6 weeks basics | 3–4 weeks basics | 8–12 weeks basics |
How to Get Started
- Run Python online: Use our free Python Compiler — no installation needed.
- Install locally: Download Python 3 from
python.org(Windows/Mac) or useapt install python3(Linux). - Verify: Run
python3 --versionin your terminal to confirm installation. - Choose an editor: VS Code with Python extension (free), PyCharm Community (free), or Jupyter Notebook for data science.
- Follow this tutorial in order: Start from Introduction and work through each topic sequentially.
Frequently Asked Questions
No. Python is designed to be beginner-friendly. This tutorial starts from absolute zero and builds up gradually.
Python 3.10+ is recommended. Python 2 reached end-of-life in 2020. All examples in this tutorial use Python 3 syntax.
Basics (syntax, loops, functions) take 2–4 weeks. Intermediate (OOP, file I/O, modules) adds 3–4 weeks. Specialisation (Django, data science, ML) takes another 2–3 months.
Yes, completely free. No account, no sign-up. All topics and examples available without restriction.
Who Is This For?
Complete beginners choosing their first programming language. Students in CS courses needing a Python reference. Data analysts transitioning from Excel to Python (Pandas). Self-taught developers adding Python to their skill set. Professionals automating repetitive tasks. Anyone preparing for Python coding interviews.