LT Python: Unterschied zwischen den Versionen

Aus Wiki CCC Göttingen
Wechseln zu: Navigation, Suche
(unicode)
(einwenig mehr ausgeschmückt)
Zeile 2: Zeile 2:
  
 
== Datentypen ==
 
== Datentypen ==
* mutable (m) vs. Non Mutable (nm)
+
* mutable (m) vs. Non Mutable (nm), welche Datentypen "können verändert" werden
 
* Numbers (Decimal, Boolean) (nm)
 
* Numbers (Decimal, Boolean) (nm)
* Sets (?)
+
* Strings (nm)
* Strings, spezial ->"""<- (nm), unicode
+
** spezial ->"""<-  
 +
** unicode, raw
 +
** einfaches Stringformatting %i, {test}
 
* Lists (m)
 
* Lists (m)
 
* Tuples (nm)
 
* Tuples (nm)
 
* Directories (m)
 
* Directories (m)
* Files (?)
+
* Sets (m)
 +
* Files
  
== Statements ==
+
== Syntax/Statements ==
 +
* python defintiert Einrückung
 
* if, one line if x>y: print z
 
* if, one line if x>y: print z
 
* a=1; b=2; print a+b
 
* a=1; b=2; print a+b
 
* [a, b,]
 
* [a, b,]
* for, while, try, with mit else
+
* for, while mit else
 +
for x in xs:
 +
    print x
 +
    if x=5:
 +
      break
 +
else:
 +
    print("keine fünf enthalten")
 +
 
 +
* try ... except ... finally
 +
* with - code ausführen beim rein & rausgehen des Blocks
  
  
 
== Sonstiges ==
 
== Sonstiges ==
 +
t* mensch kann alles in Listen,tupel, directories reinpacken
 
* Documentation, __doc__
 
* Documentation, __doc__
* Generator
+
** help command
* Iterator
+
* Generator / Iterator
* __spam__
+
** schnell mal über eine Liste iterieren, weiterbearbeiten
 +
[f(ham) for ham in spam if ham is foo]
 
* ipython
 
* ipython
  
 
==Functionen==
 
==Functionen==
 
* Scope
 
* Scope
* global
+
** innen nach außen (func, parent func,... module, global)
* lambda
+
* lambda - Funktion ohne Namen erstellen
* arg
+
foo=lambda x:x*2
* kargs
+
 
* named args
+
def foo(x):
 +
    return x*2
 +
 
 +
* args/ kargs - wenn unklar was alles übergeben werden soll
 +
** *args - position argument
 +
** **kargs - directory argument
 +
* named args f(x=2)
 
* decorator
 
* decorator
* yield
+
@foo
 +
def test(x):
 +
  pass
 +
 
 +
def foo(f):
 +
    def new_test(x):
 +
        f(x)
 +
    return new_test
 +
 
  
 
==Module==
 
==Module==
* if __name__ == "main"
+
* if __name__ == "main" - wird das script direkt ausgeführt, oder importiert
* __init__.py
+
* __init__.py, zeigt an das es ein Modul ist
* / -> .
+
* import .spam
+
  
  
 
==OOP==
 
==OOP==
* self, erstes Argument
+
* erstes Argument referenz auf Instanz, wird meist self genannt
* Decorator, classmethod
+
* classmethod/property via Decoratoren
* Decorator property
+
* method
+
* repr, str
+
 
* Methoden auflösung, methode, __getarg__, ...
 
* Methoden auflösung, methode, __getarg__, ...
* "Flavous", dict like,...
+
* "Flavous", dict like, str, repr ...
* Spezial Methoden
+
  
 
[[Ketegorie:Ligthing Talks]]
 
[[Ketegorie:Ligthing Talks]]

Version vom 19. Dezember 2011, 01:06 Uhr

Ideensammlung

Datentypen

  • mutable (m) vs. Non Mutable (nm), welche Datentypen "können verändert" werden
  • Numbers (Decimal, Boolean) (nm)
  • Strings (nm)
    • spezial ->"""<-
    • unicode, raw
    • einfaches Stringformatting %i, {test}
  • Lists (m)
  • Tuples (nm)
  • Directories (m)
  • Sets (m)
  • Files

Syntax/Statements

  • python defintiert Einrückung
  • if, one line if x>y: print z
  • a=1; b=2; print a+b
  • [a, b,]
  • for, while mit else
for x in xs:
   print x
   if x=5:
     break
else:
   print("keine fünf enthalten")
  • try ... except ... finally
  • with - code ausführen beim rein & rausgehen des Blocks


Sonstiges

t* mensch kann alles in Listen,tupel, directories reinpacken

  • Documentation, __doc__
    • help command
  • Generator / Iterator
    • schnell mal über eine Liste iterieren, weiterbearbeiten
[f(ham) for ham in spam if ham is foo]
  • ipython

Functionen

  • Scope
    • innen nach außen (func, parent func,... module, global)
  • lambda - Funktion ohne Namen erstellen
foo=lambda x:x*2
def foo(x):
    return x*2
  • args/ kargs - wenn unklar was alles übergeben werden soll
    • *args - position argument
    • **kargs - directory argument
  • named args f(x=2)
  • decorator
@foo
def test(x):
  pass
def foo(f):
    def new_test(x):
        f(x)
    return new_test


Module

  • if __name__ == "main" - wird das script direkt ausgeführt, oder importiert
  • __init__.py, zeigt an das es ein Modul ist


OOP

  • erstes Argument referenz auf Instanz, wird meist self genannt
  • classmethod/property via Decoratoren
  • Methoden auflösung, methode, __getarg__, ...
  • "Flavous", dict like, str, repr ...

Ketegorie:Ligthing Talks