Python
Ekkart Kleinod
•
Auf dieser Seite
Schnelle Erkenntnisse:
- ob Tabs oder Spaces ist Python egal, Hauptsache konsistent
- Strings in
'
einschließen, es sei denn, ein'
kommt drin vor, dann mit"
- Variablennamen mit Underscore
- Klassennamen CamelCase
- Module und
import
sind nicht so einfach, hier mal in die Doku gucken - runde Klammern werden auch fü Tupel verwendet, also nicht alles aus Gewohnheit klammern
- Strings formatieren über f-Strings
f'Hallo {name.upper()}. Du hast {amount:.2f} Geld.'
- ein Array ist erst ein Array, wenn es so deklariert wurde, sonst ist es eine Liste:
array.array([1,2,3])
(array
muss vorher importiert werden) - Test auf Typ:
isinstance(variable, type)
- bei allen Textoperationen Encoding explizit angeben:
utf_8
(utf8
,utf-8
) - Code-Stil
Buchtip:
- Fluent Python – spezielle Themen, tiefgreifend erklärt
else-Blöcke
- if: Alternative
- for: Ausführung nur, wenn Schleife zu Ende gelaufen ist, nicht bei break
- while: Ausführung nur, wenn Schleife zu Ende gelaufen ist, nicht bei break
- try: Ausführung nur, wenn keine Exception im try-Block kam
for
- übliches Pattern
for item in my_list: if item == 'banana': break else: raise ValueError('No banana found!')
try
- else: Verdeutlichung, dass bestimmter Code nur ohne Exception ausgeführt wird
else
ist ein sehr schlechter Name, schöner wäre sowas wiethen
- finally: Code wird auch bei Exception ausgeführt
statt
try: a = call_with_possible_exception() do_something_with(a) except OSError: log('Oh, an OS error...') except: log('Oh, an unspecified error...') finally: log('Finished')
besser
try: a = call_with_possible_exception() except OSError: log('Oh, an error...') except: log('Oh, an unspecified error...') else: do_something_with(a) finally: log('Finished')
Python