RU | EN | DE

🔹 1. Variablen und Datentypen

x = 10              # int
y = 3.14            # float
name = "Vitaliy"    # str
is_ready = True     # bool
z = None            # NoneType

Typen können überprüft werden:

print(type(x))

🔹 2. Eingabe und Ausgabe

name = input("Gib deinen Namen ein: ")
print("Hallo,", name)

input() gibt immer einen String zurück → muss konvertiert werden:

age = int(input("Alter: "))

🔹 3. Arithmetik und Operatoren

+  -  *  /   # Addition, Subtraktion, Multiplikation, Division (float)
//           # Ganzzahldivision
%            # Rest
**           # Potenzierung

Beispiel:

a, b = 5, 2 
print(a // b)   # 2 
print(a ** b)   # 25

🔹 4. Bedingungen

if age >= 18:     
    print("Volljährig") 
elif age > 12:     
    print("Teenager") 
else:     
    print("Kind")

🔹 5. Schleifen

while

n = 3
while n > 0: 
	print(n)     
	n -= 1

for

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

range(start, stop, step) — Zahlengenerator.

🔹 6. Kollektionen

Listen (list)

nums = [1, 2, 3] 
 
nums.append(4)      # fügt Wert am Ende hinzu
nums.insert(0, 444) # fügt Wert nach Index ein
nums.remove(2) 
 
print(nums[0])      # Zugriff per Index
print(len(nums))    # Länge der Liste
 
# new_list[start:end]
my_list = [10, 8, 6, 4, 2]
new_list = my_list[1:-1]
print(new_list)
 
my_list = [0, 3, 12, 8, 2]
 
print(5 in my_list)      # False
print(5 not in my_list)  # True
print(12 in my_list)     # True

Listen in Listen

row = [1 for i in range(8)]
print(row)
# [1, 1, 1, 1, 1, 1, 1, 1]
 
squares = [x ** 2 for x in range(10)]
print(squares)
# [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
 
twos = [2 ** i for i in range(8)]
print(twos)
# [1, 2, 4, 8, 16, 32, 64, 128]

Zweidimensionale Listen

board = [[1 for i in range(8)] for j in range(8)]
print(board)
# [
#  [1, 1, 1, 1, 1, 1, 1, 1], 
#  [1, 1, 1, 1, 1, 1, 1, 1], 
#  ...
# ]

Mehrdimensionale Listen

rooms = [[[False for r in range(20)] for f in range(15)] for t in range(3)]

Tupel (tuple) — unveränderlich:

point = (10, 20)

Mengen (set) — eindeutige Elemente:

langs = {"Python", "Java"} 
langs.add("C++")

Wörterbücher (dict) — Schlüssel-Wert-Paare:

person = {"name": "Vitaliy", "age": 43} 
print(person["name"]) 
person["job"] = "Programmer"

🔹 7. Funktionen

def greet(name):     
	return f"Hallo, {name}!"  
print(greet(name = "Vitaliy"))
print(greet("Vitaliy"))

Parameter mit Standardwerten:

def power(a, n=2):     
	return a ** n
def strangefunc(num):
	if num > 5:
		return "Test"
 
print(strangefunc(7)) # Test
print(strangefunc(2)) # None
def my_function():
    print("Kenne ich diese Variable?", var)
 
var = 1
my_function()
print(var)
 
# Kenne ich diese Variable? 1
# 1
def my_function():
    var = 2
    print("Kenne ich diese Variable?", var)
 
var = 1
my_function()
print(var)
 
# Kenne ich diese Variable? 2
# 1

global:

def my_function():
   global var
   var = 2
   print("Kenne ich diese Variable?", var)
 
var = 1
my_function()
print(var)
 
# Kenne ich diese Variable? 2
# 2
def my_function(n):
   print("Ich habe genommen", n)
   n += 1
   print("Ich habe erhalten", n)
 
var = 1
my_function(var)
print(var)
 
# Ich habe genommen 1
# Ich habe erhalten 2
# 1
def my_function(my_list_1):
    print("Ausgabe #1:", my_list_1)
    print("Ausgabe #2:", my_list_2)
    my_list_1 = [0, 1]
    print("Ausgabe #3:", my_list_1)
    print("Ausgabe #4:", my_list_2)
 
my_list_2 = [2, 3]
my_function(my_list_2)
print("Ausgabe #5:", my_list_2)
 
# Ausgabe #1: [2, 3]
# Ausgabe #2: [2, 3]
# Ausgabe #3: [0, 1]
# Ausgabe #4: [2, 3]
# Ausgabe #5: [2, 3]
def my_function(my_list_1):
    print("Ausgabe #1:", my_list_1)
    print("Ausgabe #2:", my_list_2)
    del my_list_1[0]  # Beachten Sie diese Zeile.
    print("Ausgabe #3:", my_list_1)
    print("Ausgabe #4:", my_list_2)
 
my_list_2 = [2, 3]
my_function(my_list_2)
print("Ausgabe #5:", my_list_2)
 
# Ausgabe #1: [2, 3]
# Ausgabe #2: [2, 3]
# Ausgabe #3: [3]
# Ausgabe #4: [3]
# Ausgabe #5: [3]

🔹 8. Arbeit mit Strings

text = "Python" 
print(text.lower())       # python 
print(text.upper())       # PYTHON 
print(text[0])            # P 
print(text[::-1])         # nohtyP

Formatierung:

name = "Vitaliy" 
age = 43 
print(f"{name}{age} Jahre alt")   # f-string

🔹 9. Ausnahmen

try:     
	x = int(input("Gib eine Zahl ein: ")) 
except ValueError:
	print("Fehler: es muss eine Zahl eingegeben werden")
except ZeroDivisionError:
  print('Division durch Null.') 
except:
  print('Hier ist etwas passiert...')
finally:
	print("Fertig")
try:     
	x = int(input("Gib eine Zahl ein: ")) 
except (ValueError, ZeroDivisionError):
	print("Fehler: muss eine Zahl sein. Oder Division durch Null.")
except:
    print('Hier ist etwas passiert...')
finally:
	print("Fertig")

🔹 10. Module und Import

import math
print(math.sqrt(16))
 
import mod1, mod2, mod3
 
from random import randint
print(randint(1, 10))
 
from my_module import *
 
from module import my_function as fun, my_data as dat

🔹 11. Arbeit mit Dateien

with open("data.txt", "w") as f:     
	f.write("Hallo, Welt!")  
	
with open("data.txt", "r") as f:     
	text = f.read()     
	print(text)

🔹 12. OOP-Grundlagen

class Person:     
	def __init__(self, name, age):         
		self.name = name         
		self.age = age      
	def say_hello(self):         
		print(f"Hallo, ich bin {self.name}")  
p = Person("Vitaliy", 43) 
p.say_hello()

🔹 13. List Comprehensions

squares = [x ** 2 for x in range(5)]

🔹 14. Lambda-Funktionen

double = lambda x: x * 2 
print(double(4))

🔹 15. Nützliche eingebaute Funktionen

len(), sum(), max(), min(), sorted(), type(), range(), enumerate(), zip()