3.Befehle

From Bioinformatik Wiki
Revision as of 15:12, 26 July 2021 by Skl (talk | contribs)

print-Befehl

#Befehl: 
print()

#Beispiel: 
print(“hello“)

output

hello 

Funktion

  • der entsprechende Inhalt des print-Befehls wird in der Console ausgegeben

Syntax

  • die runden Klammern dienen dazu den Anfang und das Ende der Ausgabe zu markieren
  • Wörter, bei denen es sich nicht um einen Variablennamen handelt, müssen in Anführungszeichen gesetzt werden
  • geschieht das nicht wird ein Syntaxfehler angezeigt (s.Beispiel_2)
  • int und floats werden ohne Anführungszeichen eingegeben
#Beipsiel_2:
print(falsch)

output

NameError: name 'falsch' is not defined
  • Python geht davon aus das es sich bei „falsch“ um eine Variable handelt und möchte den Wert dieser Variablen ausgeben. Es wurde aber keine Variable mit den Namen „falsch“ definiert


type-Befehl

#Befehl
type()
#Beispiel_1: 
a="abc"
print(type(a))
print(type(1))
print(type(1.0)
d=True
print(type(d))

buch_1={"Buch":"Der Herr der Ringe", "Autor":"Tolkien", "Preis":45}
print(type(buch_1))

output

<class 'str'>
<class 'int'>
<class 'float'>
<class 'bool'>
<class 'dict'>

Funktion

  • mit dem type-Befehl lässt sich der Datentyp bestimmen

Syntax

  • um den Datentyp zu bestimmen wird dieser in die Klammern des type-Befehls geschrieben
  • dabei kann es sich direkt um den Datentyp handeln oder einen Varibalennamen
  • auch hier ist der print Befehl wieder notwendig um das Ergebnis ausgeben zu lassen
  • ohne den print -Befehl wird der type -Befehl zwar ausgeführt, aber nicht in der Console ausgegeben


input -Befehl

#Befehl:
eingabe=input()

#Beispiel: 
zahl=input()
print(zahl)

output

3 #eingegebene Zahl des Nutzers im Eingabefeld  
3 #durch print-Befehl ausgegebene Zahl

Funktionen

  • ermöglicht dem Nutzer die Interaktion mit dem Programm
  • so kann z.B. ein Rechenprogramm mit jeder beliebigen vom Nutzer eingegebenen Zahl rechnen und nicht nur mit vorab programmierten Zahlen
  • gleichzeitig handelt es sich beim input-Befehl auch um ein print-Befehl, dazu muss der

Syntax

  • nach den Ausdruck "input" folgt eine Klammer, die bei Ausführung des Programms ein Eingabefeld in der Console erzeugt
  • gleichzeitig handelt es sich beim input-Befehl auch um ein print-Befehl, dazu muss der entsprechende Text einfach in die Klammer eingegeben werden (s. Beispiel_2)
#Beispiel_2:
zahl=input("Gib hier diene Zahl ein: ")

print(zahl)

output

Gib hier deine Zahl ein: 3
3
  • die Eingabe des Nutzers wird meist durch eine Variable definiert, d.h.:
eingabe=input()
  • da der einzutragende Wert bei der Programmierung nicht bekannt ist, kann so „stellvertretend“ mit der Variablen programmiert werden
  • s. Beispiel_3, bei der die Rechenoperation „*2“ mit der Variablen „zahl“ programmiert wird, welche später durch die Eingabe des Nutzers einen Zahlenwert erhält
  • der Wert der Variablen wird also erst festgelegt, während das Programm läuft
  • in der Console entsteht durch den input-Befehl ein „Eingabefeld“ (nicht direkt sichtbar) in das der Nutzer einen Wert (in Beispiel_1 eine Zahl) eintrage kann
  • ACHTUNG!: jede Eingabe wird durch den input-Befehl automatisch als string gespeichert
  • in Bespiel_3 wird die 3 in string-Form abgespeichert
  • die Rechenoperation wird nicht als Multiplikation mit 2 verstanden sondern als Wiederholung des strings
#Beispiel_3: 
zahl=input("Gib hier diene Zahl ein: ")
ergebnis= zahl*2
print(ergebnis)

output

Gib hier deine Zahl ein: 3
33
  • der string 3 wird wiederholt und es kommt 33 statt 6 heraus
  • Lösung: man kann den Datentyp des "inputs" vorab definieren:
int(input()) , float(input())
  • weiß man vorab nicht um welchen Datentypen es sich handelt ist der eval()-Befehl zu empfehlen (s. Beispiel 4) , dieser speichert die Eingabe automatisch unter dem passenden Datentypen ab (string, integer, float)
  • hier ist allerdings zu beachten, dass ein string wieder in Anführungszeichen gesetzt werden muss
#Beispiel_4: 
zahl=eval(input("Gib hier diene Zahl ein: "))
ergebnis= zahl*2
print(ergebnis)

output

Gib hier deine Zahl ein: 3
6
#oder 
Gib hier deine Zahl ein: 2.4
4.8
#oder 
Gib hier deine Zahl ein: "a"
aa


while-Schleife

#Befehl
while Bedingung:
    Operation() 
#Beispiel:
n=1
while n<10: 
    print(n)
    n=n+1

output

#Aasgabe:
1
2
3
4
5
6
7
8
9

Funktion

  • bestimmte Operationen werden automatisch wiederholt
  • erspart viel Programmierarbeit, da nicht alle Operationen einzeln programmiert werden müssen

Syntax

  • die Schleife wird mit dem Ausdruck "while" begonnen
  • darauf folgt eine Bedingung, die überprüft wird (z.B. n<10) gefolgt von einem Doppelpunkt
  • in den nächsten Zeilen folgen die Operationen, die innerhalb der Schleife durchgeführt werden sollen
  • die zur Schleife gehörigen Operationen sind dadurch gekennzeichnet, dass der Code eingerückt ist
  • die while-Schleife sollte so programmiert sein, dass sie irgendwann zu einem Ende kommt und nicht endlos weiterläuft, d.h. die zu überprüfende Bedingung darf irgendwann nicht mehr zutreffen
  • --> ansonsten kommt es zu einer endlosen Schleife

Ablauf der Schleife

  • am besten wird die Funktion und die Syntax einer Schleife klar, wenn man sie Schritt für Schritt durchgeht, hier am Beispiel_1:
  • ersten Zeile: der Variablen n wir der Wert 1 zugeordnet
  • zweite Zeile: so lange n kleiner als 10 ist werden folgende Operationen durchgeführt
  • (hier wird die Bedingung überprüft, trifft sie zu werden die Operationen der Schleife durchgeführt)
  • dritte Zeile: gebe den Wert von n aus
  • (im ersten Durchlauf beträgt der Wert, wie in der ersten Zeile definiert, den Wert 1)
  • vierte Zeile: definiere die Variable n neu, indem du den Wert von n nimmst und 1 addierst
  • (n wird neu definiert als der alte Wert von n plus eins, also 1+1, damit ist n jetzt 2)
  • sobald die Operationen der Schleife durchgeführt sind, beginnt sie wieder von Neuem, also mit der Überprüfung der Bedingung
  • so wird der Wert n immer größer
  • erst wenn n=10, trifft die Bedingung nicht zu, die Operationen der Schleife werden nicht durchgeführt
  • finden sich weiter Programmzeilen unterhalb der Schleife, die nicht Teil der Schleife sind, werden diese Programmzeilen erst nach Beendigung der Schleife ausgeführt