x = 3
print(x, type(x))3 <class 'int'>
print(x + 1) # Addition
print(x - 1) # Subtraction
print(x * 2) # Multiplication
print(x**2) # Exponentiation4
2
6
9
x += 1
print(x)
x *= 2
print(x)4
8
y = 2.5
print(type(y))
print(y, y + 1, y * 2, y**2)<class 'float'>
2.5 3.5 5.0 6.25
Booleansยถ
t, f = True, False
print(type(t))<class 'bool'>
print(t and f) # Logical AND;
print(t or f) # Logical OR;
print(not t) # Logical NOT;
print(t != f) # Logical XOR;False
True
False
True
Stringsยถ
hello = "hello" # String literals can use single quotes
world = "world" # or double quotes; it does not matter
print(hello, len(hello))hello 5
hw = hello + " " + world # String concatenation
print(hw)hello world
hw12 = f"{hello} {world} {12}" # string formatting
print(hw12)hello world 12
s = "hello"
print(s.capitalize()) # Capitalize a string
print(s.upper()) # Convert a string to uppercase; prints "HELLO"
print(s.rjust(7)) # Right-justify a string, padding with spaces
print(s.center(7)) # Center a string, padding with spaces
print(s.replace("l", "(ell)")) # Replace all instances of one substring with another
print(" world ".strip()) # Strip leading and trailing whitespaceHello
HELLO
hello
hello
he(ell)(ell)o
world
xs = [3, 1, 2] # Create a list
print(xs, xs[2])
print(xs[-1]) # Negative indices count from the end of the list; prints "2"[3, 1, 2] 2
2
xs[2] = "foo" # Lists can contain elements of different types
print(xs)[3, 1, 'foo']
xs.append("bar") # Add a new element to the end of the list
print(xs)[3, 1, 'foo', 'bar']
x = xs.pop() # Remove and return the last element of the list
print(x, xs)bar [3, 1, 'foo']
Slicingยถ
nums = list(range(5)) # range is a built-in function that creates a list of integers
print(nums) # Prints "[0, 1, 2, 3, 4]"
print(nums[2:4]) # Get a slice from index 2 to 4 (exclusive); prints "[2, 3]"
print(nums[2:]) # Get a slice from index 2 to the end; prints "[2, 3, 4]"
print(nums[:2]) # Get a slice from the start to index 2 (exclusive); prints "[0, 1]"
print(nums[:]) # Get a slice of the whole list; prints ["0, 1, 2, 3, 4]"
print(nums[:-1]) # Slice indices can be negative; prints ["0, 1, 2, 3]"
nums[2:4] = [8, 9] # Assign a new sublist to a slice
print(nums) # Prints "[0, 1, 8, 9, 4]"[0, 1, 2, 3, 4]
[2, 3]
[2, 3, 4]
[0, 1]
[0, 1, 2, 3, 4]
[0, 1, 2, 3]
[0, 1, 8, 9, 4]
Loopingยถ
animals = ["cat", "dog", "monkey"]
for animal in animals:
print(animal)cat
dog
monkey
animals = ["cat", "dog", "monkey"]
for idx, animal in enumerate(animals):
print(f"#{idx + 1}: {animal}")#1: cat
#2: dog
#3: monkey
List comprehensionsยถ
Eenvoudige loops kunnen in elegante one-liners uitgedrukt worden, inclusief condities.
nums = [0, 1, 2, 3, 4]
squares = []
for x in nums:
squares.append(x**2)
print(squares)[0, 1, 4, 9, 16]
nums = [0, 1, 2, 3, 4]
squares = [x**2 for x in nums]
print(squares)[0, 1, 4, 9, 16]
nums = [0, 1, 2, 3, 4]
even_squares = [x**2 for x in nums if x % 2 == 0]
print(even_squares)[0, 4, 16]
Dictionariesยถ
Dit zijn containers (key, value) paren zoals Map in Java.
d = {"cat": "cute", "dog": "furry"} # Create a new dictionary with some data
print(d["cat"]) # Get an entry from a dictionary; prints "cute"
print("cat" in d) # Check if a dictionary has a given key; prints "True"cute
True
d["fish"] = "wet" # Set an entry in a dictionary
print(d["fish"]) # Prints "wet"wet
print(d["monkey"]) # KeyError: 'monkey' not a key of d---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
Cell In[69], line 1
----> 1 print(d["monkey"]) # KeyError: 'monkey' not a key of d
KeyError: 'monkey'print(d.get("monkey", "N/A")) # Get an element with a default; prints "N/A"
print(d.get("fish", "N/A")) # Get an element with a default; prints "wet"N/A
wet
del d["fish"] # Remove an element from a dictionary
print(d.get("fish", "N/A")) # "fish" is no longer a key; prints "N/A"N/A
d = {"person": 2, "cat": 4, "spider": 8}
for animal, legs in d.items():
print(f"A {animal} has {legs} legs")A person has 2 legs
A cat has 4 legs
A spider has 8 legs
Dictionary comprehensionsยถ
nums = [0, 1, 2, 3, 4]
even_num_to_square = {x: x**2 for x in nums if x % 2 == 0}
print(even_num_to_square){0: 0, 2: 4, 4: 16}
Setsยถ
Een set is een ongeordende verzameling van unieke elementen.
animals = {"cat", "dog"}
print("cat" in animals) # Check if an element is in a set; prints "True"
print("fish" in animals) # prints "False"True
False
animals.add("fish") # Add an element to a set
print("fish" in animals)
print(len(animals)) # Number of elements in a set;True
3
animals.add("cat") # Adding an element that is already in the set does nothing
print(len(animals))
animals.remove("cat") # Remove an element from a set
print(len(animals))3
2
Loopingยถ
Dit is identiek aan looping bij lijsten, maar de volgorde ligt niet vast.
animals = {"cat", "dog", "fish"}
for idx, animal in enumerate(animals):
print(f"#{idx + 1}: {animal}")#1: fish
#2: dog
#3: cat
Set comprehensionsยถ
from math import sqrt
print({int(sqrt(x)) for x in range(30)}){0, 1, 2, 3, 4, 5}
Tuplesยถ
Een tuple is een (immutable) geordende lijst van waarden. In vele opzichten zijn ze gelijkaardig aan lijsten. Een van de meest belangrijke verschillen is dat tuples, in tegenstelling tot lijsten, als dictionary keys en elementen van sets gebruikt kunnen worden.
d = {(x, x + 1): x for x in range(10)} # Create a dictionary with tuple keys
t = (5, 6) # Create a tuple
print(type(t))
print(d[t])
print(d[(1, 2)])<class 'tuple'>
5
1
t[0] = 1---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
Cell In[80], line 1
----> 1 t[0] = 1
TypeError: 'tuple' object does not support item assignmentFunctiesยถ
def sign(x):
if x > 0:
return "positive"
elif x < 0:
return "negative"
else:
return "zero"
for x in [-1, 0, 1]:
print(sign(x))negative
zero
positive
Default argumenten
def hello(name, loud=False):
if loud:
print(f"HELLO, {name.upper()}")
else:
print(f"Hello, {name}!")
hello("Bob")
hello("Fred", loud=True)Hello, Bob!
HELLO, FRED
Classesยถ
class Greeter:
# Constructor
def __init__(self, name):
self.name = name # Create an instance variable
# Instance method
def greet(self, loud=False):
if loud:
print(f"HELLO, {self.name.upper()}")
else:
print(f"Hello, {self.name}!")
g = Greeter("Fred") # Construct an instance of the Greeter class
g.greet() # Call an instance method; prints "Hello, Fred"
g.greet(loud=True) # Call an instance method; prints "HELLO, FRED!"Hello, Fred!
HELLO, FRED
Gebaseerd op cs231n
.github .io /python -numpy -tutorial