Adding next chapter and Assignment and initial README.md
parent
a7ee33bdb0
commit
1339e39248
|
|
@ -0,0 +1,18 @@
|
|||
#Dictionary (Map)
|
||||
#Erstellen des Dictionarys
|
||||
persons = {"Alice":30, "Bob":25}
|
||||
print(persons)
|
||||
|
||||
#Hinzufügen neuer Wert
|
||||
persons["Peter"] = 40
|
||||
|
||||
#Ändern eines Values
|
||||
persons["Bob"] = 45
|
||||
|
||||
#Löschen eines Elements mithilfe von Key
|
||||
persons.pop("Bob")
|
||||
print(persons)
|
||||
|
||||
#Löschen des letzten Wertes mit Rückgabe
|
||||
key,value = persons.popitem()
|
||||
print(key, value)
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
#Klassische Situation mit Klasse und Konstruktor __init__ ist dabei Konstruktor
|
||||
#self ist vergleichbar mit this aus java
|
||||
class Person:
|
||||
def __init__(self, name, age):
|
||||
self.name = name
|
||||
self.age = age
|
||||
def ausgabe(self):
|
||||
print(self.name, self.age)
|
||||
|
||||
#Instanz von Person und anwenden der Funktion
|
||||
p1 = Person("Peter", 30)
|
||||
p1.ausgabe()
|
||||
|
||||
#Funktion anlegen ohne Typen
|
||||
def rechne(a, b):
|
||||
return a+b
|
||||
|
||||
#Funktion mit Typen
|
||||
def rechne1(a: int, b: int) -> int:
|
||||
return a+b
|
||||
|
||||
print(rechne(1, 2))
|
||||
print(rechne1(1, 2))
|
||||
|
||||
#Python erlaubt Mehrfachvererbung
|
||||
class A: pass
|
||||
class B: pass
|
||||
class C(A, B): pass
|
||||
|
||||
#Einfache Art und Weise der Nutzung von Lambdaausdrücken
|
||||
square = lambda x: x*x
|
||||
print(square(5))
|
||||
|
||||
def func(a,b):
|
||||
return a+b
|
||||
|
||||
print(func(10, 2))
|
||||
|
||||
def func(a):
|
||||
return a*a
|
||||
|
||||
#print(func(10, 2)) Dies funktioniert nicht, die die untere die obere überschreibt!
|
||||
print(func(10))
|
||||
|
||||
#funktionen als objekte
|
||||
def apply(func, value):
|
||||
return func(value)
|
||||
print(apply(lambda x: x+1, 5))
|
||||
|
||||
#enums
|
||||
from enum import Enum
|
||||
class Status(Enum):
|
||||
OK = 1
|
||||
NOT_FOUND = 2
|
||||
ERROR = 3
|
||||
|
||||
print(Status.OK.value)
|
||||
print(Status.OK)
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
#In diesem Abschnitt soll es um Listen in Python gehen
|
||||
|
||||
#Listen anlegen
|
||||
nums = [1,2,3,4]
|
||||
|
||||
#Zur Liste hinzufügen
|
||||
nums.append(5)
|
||||
|
||||
# ausgabe von Listenelementen
|
||||
print(nums)
|
||||
print(nums[2])
|
||||
print(nums[2:5])
|
||||
|
||||
#Einfügen eines Listenelements
|
||||
nums.insert(1, 20)
|
||||
|
||||
#Einfügen mehrerer Listenelemente
|
||||
nums.extend([7,8,9])
|
||||
|
||||
#Pop des letzten Elements
|
||||
numTest = nums.pop()
|
||||
print (numTest)
|
||||
|
||||
#Pop des Elements an erster stelle
|
||||
numTest2 = nums.pop(1)
|
||||
print(numTest2)
|
||||
|
||||
#Leeren der Liste
|
||||
nums.clear()
|
||||
print(nums)
|
||||
|
||||
#mutability von Listen
|
||||
a = [1,2,3]
|
||||
b=a
|
||||
b.append(4)
|
||||
print(a)
|
||||
#b verweist auf a und änderungen werden auf a durchgeführt
|
||||
#es werden referenzen übergeben
|
||||
c = a.copy()
|
||||
c.append(5)
|
||||
print(a, c)
|
||||
|
||||
#Erweiterte Listen
|
||||
liste = [1, "abc", 3.5]
|
||||
print(liste)
|
||||
|
||||
#Erweitertes erstellen von Listen
|
||||
nums = [1,2,3,4,5,6]
|
||||
#in erstellungsanweisungen können for schleifen und if abfragen verwendet werden
|
||||
squares = [x*x for x in nums if x%2 == 0]
|
||||
print(squares)
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
#Sets
|
||||
values = {1,2,2,3}
|
||||
print (values)
|
||||
|
||||
#Hinzufügen einzelner werte
|
||||
values.add(4)
|
||||
|
||||
#hinzufügen einer liste
|
||||
values.update([5,6,7])
|
||||
|
||||
#entfernen eines elements mit wert 1 (unsicher, wirft fehler falls nicht vorhanden)
|
||||
values.remove(1)
|
||||
|
||||
#entfernen eines elements mit wert 2 (sicher, keine Fehler falls es nicht existiert)
|
||||
values.discard(2)
|
||||
|
||||
#entfernt ein beliebiges Element
|
||||
values.pop()
|
||||
print(values)
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
#Tupel
|
||||
point = (3,4,5)
|
||||
x,y,z = point
|
||||
print(x,y,z)
|
||||
|
||||
points = [(3,4), (5,6), (7,8)]
|
||||
a, b = points[2]
|
||||
print(points, points[2], a, b)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# Aufgabenstellung
|
||||
|
||||
1. Schreiben Sie eine Listenberechnung in Python, bei der die Zahlen `[1,2,3,4,5,6,7,8,9]` quadriert werden, wenn diese gerade sind.
|
||||
2. Gegeben ist folgender Ausdruck `persons = {"Alice":30, "Bob":45, "Charlie":18}` schreiben Sie dazu eine Funktion, die das Durchschnittsalter berechnet.
|
||||
3. Schreiben Sie eine Klasse Person mit den Attributen `name` und `alter` und eine Funktion `is_adult`, die prüft ob eine Person erwachsen ist.
|
||||
4. Schreiben Sie eine Funktion `applyToList`, die eine Funktion und eine Liste entgegen nimmt und die Funktion auf alle Elemente der Liste anwendet (Tipp: Lambda).
|
||||
5. Schreiben Sie einen Taschenrechner, der über die Kommandozeile bedient werden kann und die Grundrechenarten beherrscht.
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
# Python Code Repository
|
||||
|
||||
This Repository contains examples of how to use most basics in python. Everything shown in our presentation is also shown in this repo.
|
||||
|
||||
## Usage
|
||||
|
||||
This container is very similar to other devcontainers.
|
||||
|
||||
Follow these steps to get started:
|
||||
|
||||
1. Clone this repository to a local folder of your choice.
|
||||
2. Navigate to this exact location to open the python container.
|
||||
3. Open Visual Studio Code in this folder.
|
||||
4. Click *Reopen in Container*.
|
||||
|
||||
To start any python program use the command `python ./dateiname.py` and it will be executed.
|
||||
Loading…
Reference in New Issue