Post on 19-Jul-2020
Python Zahlen, Strings Logik Kontrollstrukturen
ScriptsprachenPython Basics
Sascha Winter
Lehrstuhl fuer BioinformatikFriedrich-Schiller-Universitaet Jena
sascha.winter@uni-jena.de
11.08.2014
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Python
Erschien 1991, Guido van Rossum
Nach Monty Python benannt
Leicht erlernbare Syntax
Gut lesbar
Multi-Paradigmen Sprache
Objektorientiert, Imperativ, Funktional
Python 2 vs. Python 3
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Python
Interpretiert
Automatische Speicherverwaltung
Dynamisches Typensystem
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Python
i f 2==2:p r i n t ”TEST” . s t r i p ( ”T” ) # Kommentar !
e l s e :p r i n t ”TEST” . s s t t r r i i p p ( ”T” )
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Python
python # i n t e r a k t i v epython −c ’command ’ # wegwerf Codepython FILE . py # fu e h r t FILE auspython − i FILE . py # FILE , dann i n t e r a k t i v e
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Blocke
Blocksyntax!
i f 1 + 1 == 2 :p r i n t ” f o o ”p r i n t ” bar ”
i f 1 + 1 == 2 :p r i n t ” f o o ” ; p r i n t ” bar ”
Tab XOR Leerzeichen!
Styleguide: Einruckung == 4 Leerzeichen
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Zahlen, Strings
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Zahlen
Unendlich große ints
a , b = 5 , 2a + b , a − b , a ∗ b , a / b , a % b
i = 0i += 1
a , b = 5 . 5 , 2 . 2 5a + b , a − b , a ∗ b , a / b
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
’ S i n g l e ’ o r ” Double q u o t e s ”
p r i n t ”A v e r y l o n g s t r i n g w i t h \a l i n e b r e a k ”A v e r y l o n g s t r i n g w i t h a l i n e b r e a k
p r i n t ””” Other v e r y l o n g s t r i n gw i t h l i n e b r e a k ”””Other v e r y l o n g s t r i n gw i t h l i n e b r e a k
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
”Con” + ” c a t ”” Concat ”
” Test ”∗3” T e s t T e s t T e s t ”
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
word = ” Simple Test ”word [ 3 ]”m”
word [ : 6 ]” S imple ”
word [ 7 : ]” Test ”
word [ : i ] + word [ i : ] == word
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
word = ” Simple Test ”word [ 1 : 1 0 0 ]” S imple Test ”
word [−1]” t ”
word [ −3 : ]” e s t ”
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
s . e n d s w i t h ( s u f f i x ) # Also wi th s t a r t , end
s . s t a r t s w i t h ( p r e f i x ) # Also wi th s t a r t , end
s . f i n d ( s u b s t r i n g ) # Also wi th s t a r t , end
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
s . s t r i p ( [ c h a r s ] ) # Also l s t r i p ( ) , r s t r i p ( )
” t e s t t e s t ” . s t r i p ( s t ) # ” e s t t e ”
s . s t r i p ( ) # Remove w i th e space
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
s . s p l i t ( s t r i n g ) # Also l s p l i t ( ) , r s p l i t ( )# max s p l i t s
” 1 , 2 , , 3 ” . s p l i t ( ” , ” ) # [”1” , ”2” , ”” , ”3” ]
”1 2 3” . s p l i t ( ) # [”1” , ”2” , ”3” ]
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Strings
” , ” . j o i n ( [ ”1” , ”2” , ”3” ] ) # 1 ,2 ,3” , ” . j o i n ( ” 1 ,2 ,3 ” . s p l i t ( ” , ” ) ) # 1 ,2 ,3# j o i n i s the r e v e r s e o p e r a t i o n o f s p l i t
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
C-style Format Strings
”%3d , %3d , %3.3 f ” % (127 , 8 , 1 3 . 023 61 31 )” 127 , 8 , 13 .024 ”
” H e l l o %s ” % ” World ”#=> ” He l l o World”
”%d + %d < 10” % ( 5 , 4)#=> ”5 + 4 < 10”
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Logik
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Logik
<, >, ==, <=, >=, !=
a < b == c
and , or , not
FALSE : F a l s e , None , 0 , 0 . 0 , ”” , [ ] , . . .
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Logik
p r i n t 0 and ”B”0
p r i n t ”A” and F a l s eF a l s e
p r i n t ”A” and ”B”B
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Logik
a = s o m e S t r i n g F u n c t i o n ( ) # Might be ””p r i n t a or ” D e f a u l t Value ”
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Kontrollstrukturen
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
IF
x = 4i f x < 2 :
p r i n t ”x i s t k l e i n e r 2”e l i f x == 2 :
p r i n t ”x i s t g l e i c h 2”e l s e :
p r i n t ”x i s t g r o e s s e r 2”p r i n t ”Ende des IF ”
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
WHILE
a , b = 0 , 1whi le b < 1 0 :
p r i n t ba , b = b , a+b
112358
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
FOR
words = [ ”Mary” , ” had ” , ”a” , ” l i t t l e ” , ” lamb ” ]f o r word i n words :
p r i n t word
Maryhadal i t t l elamb
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
FOR
f o r i i n range ( 1 0 ) :p r i n t i
range ( 5 , 10) #[5 , 6 , 7 , 8 , 9 ]
range ( 0 , 10 , 2) #[0 , 2 , 4 , 6 , 8 ]
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
FOR
words = [ ”Mary” , ” had ” , ”a” , ” l i t t l e ” , ” lamb ” ]f o r i i n range ( l en ( words ) ) :
p r i n t i , words [ i ]
0 Mary1 had2 a3 l i t t l e4 lamb
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Continue
f o r i i n range ( 1 0 ) :i f i % 2 == 0 :
continuep r i n t i
13579
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Break, Else
f o r n i n range ( 3 , 1 0 ) :f o r x i n range ( 2 , n ) :
i f n % x == 0 :break
e l s e :p r i n t n
357
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
Pass
f o r i i n range ( 1 0 ) :i f i % 2 == 0 :
pass # TODO: Implement t h i s l a t e re l s e :
p r i n t i
02468
Scriptsprachen
Python Zahlen, Strings Logik Kontrollstrukturen
keyword def introduces a function definition
first statement may be a docstring
Defining and calling a function
def gcd ( a , b ) :’ ’ ’ E u c l i d e a n a l g o r i t h m ’ ’ ’whi le b != 0 :
t , b , a = b , a%t , treturn a
gcd ( 4 2 , 2 3 )
Scriptsprachen