Python Tutorial — Learn Python Step by Step
Key takeaway: Master Python programming from scratch — variables, loops, functions, OOP, file handling, and libraries — with clear human-readable explanations and runnable code examples.
Python Variables and Literals
Variables store values in named containers. Python is dynamically typed — you don't declare types explicitly. The type is inferred from the assigned value and can change at any time.
Creating Variables
# Variables are created on first assignment (no declaration needed)
name = "Alice" # str
age = 25 # int
height = 5.7 # float
is_student = True # bool
grades = [90, 85, 92] # list
# Print values and their types
print(name, type(name)) # Alice <class 'str'>
print(age, type(age)) # 25 <class 'int'>
print(height, type(height)) # 5.7 <class 'float'>
print(is_student, type(is_student)) # True <class 'bool'>
# Multiple assignment
x, y, z = 1, 2, 3
a = b = c = 0 # all point to 0
# Swap values (no temp variable needed!)
x, y = y, x
print(x, y) # 2 1Naming Rules and Conventions
| Rule | Valid | Invalid |
|---|---|---|
| Must start with letter or underscore | name, _private | 1name, @var |
| Can contain letters, digits, underscores | user_name, item2 | user-name, my var |
| Case-sensitive | Name ≠ name | — |
| Cannot be a keyword | my_class | class, for, if |
Convention: Use snake_case for variables/functions, PascalCase for classes, UPPER_CASE for constants.
Numeric Literals
# Integers (no size limit in Python!)
decimal = 42
negative = -100
big = 1_000_000 # underscores for readability
binary = 0b1010 # 10
octal = 0o17 # 15
hexadecimal = 0xFF # 255
# Floats
pi = 3.14159
scientific = 2.5e3 # 2500.0
tiny = 1.2e-4 # 0.00012
# Complex numbers
z = 3 + 4j
print(z.real, z.imag) # 3.0 4.0
# Boolean (subclass of int)
print(True + True) # 2
print(False * 10) # 0String Literals
# Single and double quotes are identical
s1 = 'Hello'
s2 = "Hello"
# Triple quotes for multi-line strings
message = """This is a
multi-line string
that preserves newlines."""
# Raw strings (no escape processing)
path = r"C:\Users\name\folder" # backslashes are literal
# f-strings for formatting
name = "World"
greeting = f"Hello, {name}!"
# String operations
print(len(greeting)) # 13
print(greeting.upper()) # HELLO, WORLD!
print(greeting[0:5]) # HelloConstants (Convention Only)
# Python has no true constants — it is a CONVENTION to use UPPER_CASE
MAX_SIZE = 100
PI = 3.14159
DATABASE_URL = "postgresql://localhost/mydb"
# Nothing stops reassignment (but tools like mypy can warn)
# MAX_SIZE = 200 # works but violates conventionKey Takeaways
- Variables are created on assignment — no type declaration needed.
- Python is dynamically typed: a variable can hold any type and change type.
- Use
snake_casefor variables,UPPER_CASEfor constants. - Python integers have no size limit — they grow as large as memory allows.
- Use
type(x)to check a variable's type at runtime.
Python Programming Tutorial — Learn Python in a practical, step-by-step way. According to the official Python documentation, Python emphasizes code readability and simplicity, making it ideal for beginners.
Related tools: Python Online Compiler | Python Examples | JavaScript Tutorial | Java Tutorial
Python Career & Learning Guide
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 in our free Python Compiler.
Why Learn Python in 2026?
- #1 Most Popular Language: Ranked first on TIOBE, Stack Overflow, and GitHub.
- AI and Data Science: The primary language for machine learning (TensorFlow, PyTorch, scikit-learn) and data analysis (Pandas, NumPy).
- Web Development: Django and Flask power scalable backends at companies like Instagram and Spotify.
- Automation & Scripting: Automate files, emails, web scraping, and data processing in minutes.
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 |
| Best For | AI/ML, Data, Web | 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 |
Frequently Asked Questions
Do I need prior programming experience to learn Python?
No! Python is specifically designed to be beginner-friendly. This tutorial starts from zero and builds up gradually.
Which Python version should I use?
Python 3.10+ is recommended. All examples in this tutorial use Python 3 syntax.
Is this Python tutorial completely free?
Yes, 100% free with no registration or sign-up required. Access all lessons and code examples anytime.