Python Executor

Run and test Python code directly in the browser.

💡 Python Basics Guide

1. Declaring Variables and Constants

Python is dynamically typed, so you don’t need to declare types explicitly. There's no built-in constant keyword, but by convention, constants are written in all-uppercase.

# Variables
x = 10
pi = 3.14
name = "Alice"
is_active = True

# Constants (by convention)
MAX_USERS = 100
APP_NAME = "CodeUtility"

# Constants can still be reassigned (not enforced)
MAX_USERS = 200  # ⚠️ Technically allowed, but discouraged
2. Conditionals

Control logic with if, elif, and else blocks. In Python 3.10+, you can also use match-case as a switch-case alternative.

# Traditional if-elif-else
x = 2
if x == 1:
    print("One")
elif x == 2:
    print("Two")
else:
    print("Other")

Alternative: match-case (Python 3.10+)

# Requires Python 3.10+
x = 2
match x:
    case 1:
        print("One")
    case 2:
        print("Two")
    case _:
        print("Other")
3. Loops

for is used to iterate over sequences, while runs as long as a condition is true.

for i in range(3):
    print(i)

count = 3
while count > 0:
    print(count)
    count -= 1
4. Lists

Lists are ordered, mutable collections. You can access elements by index.

fruits = ["apple", "banana"]
print(fruits[0])
print(len(fruits))
5. List Manipulation

Add, remove, slice, and reverse lists. List comprehensions allow compact iteration.

fruits.append("cherry")
fruits.insert(1, "kiwi")
fruits.remove("banana")
fruits.pop()

print(fruits[1:3])
print(fruits[::-1])

squares = [x*x for x in range(5)]
6. Console Input/Output

Use input() to read from users and print() to display output.

You can print multiple lines using \n (newline character) or by calling print() multiple times.

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

# Print multiple lines
print("Line 1\nLine 2\nLine 3")

# Or use multiple print statements
print("Line A")
print("Line B")
print("Line C")
7. Functions

Functions help organize code and allow reuse. Use parameters and return values.

def greet(name):
    return "Hello " + name

print(greet("Alice"))
8. Dictionaries

Store key-value pairs. Keys are unique and values can be accessed via keys.

person = {"name": "Bob", "age": 25}
print(person["name"])
print(person.get("email", "Not provided"))
9. Exception Handling

Use try and except to catch and handle errors gracefully.

try:
    x = 1 / 0
except ZeroDivisionError:
    print("Cannot divide by zero")
10. File I/O

Read from and write to files using open().

with open("data.txt", "w") as f:
    f.write("Hello World")

with open("data.txt", "r") as f:
    print(f.read())
11. String Manipulation

Python strings have powerful methods like strip(), replace(), and split().

text = "  Hello World  "
print(text.strip())
print(text.upper())
print(text.replace("Hello", "Hi"))
print(text.split())
12. Classes & Objects

Define reusable blueprints with classes. Use __init__ to initialize objects.

class Person:
    def __init__(self, name):
        self.name = name

    def greet(self):
        return "Hi, I'm " + self.name

p = Person("Alice")
print(p.greet())