Path: csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Dennis Schulmeister-Zimolong Newsgroups: de.comp.lang.python Subject: Re: Wie sieht Python fuer mich aus? Date: Sun, 8 Jan 2017 21:24:31 +0100 Organization: A noiseless patient Spider Lines: 152 Message-ID: <20170108212431.5328803d863c5c17d5d0afac@windows3.de> References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Injection-Info: mx02.eternal-september.org; posting-host="0f20c4655b840c2eb6aba1c77c1a2a49"; logging-data="2923"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19QOOZGYbnCYvy2LGjXzZA7UbwicNwtG8s=" X-Newsreader: Sylpheed 3.5.1 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) Cancel-Lock: sha1:cCNikqLY5Y264/4n6+Scvc5MJpI= Xref: csiph.com de.comp.lang.python:4620 Hall Stefan, F=C3=BCr einen ersten Versuch gar nicht mal so schlecht. > Es gibt ein =C2=BBelseif=C2=AB (oder =C3=A4hnlich). Die Anweisung hei=C3=9Ft =C2=BBelif=C2=AB. Da habe ich lange gebraucht, bis= ich mir das merken konnte. :-) > Spezielle Methoden Gibt es einige. Bei Objekten gilt generell =C2=BBDuck Typing=C2=AB. Vererbu= ng dient i.d.R. nicht dazu, Typkompatibilit=C3=A4t herzustellen. Es reicht, wenn ein Objekt einfach bestimmte Methoden hat, um es im jeweiligen Kontext nutzen zu k=C3=B6nnen (z.B. Datei-Objekte, Iteratoren, =E2=80=A6) Gru=C3=9F, Dennis On 8 Jan 2017 17:52:19 GMT ram@zedat.fu-berlin.de (Stefan Ram) wrote: > Ich hatte mich bisher praktisch nicht mit Python > besch=C3=A4ftigt, aber hatte in den letzten 24 Stunden einmal > kurz eine Einf=C3=BChrung in Python =C3=BCberflogen. >=20 > Einige Stunden danach, wollte ich mich einmal hinsetzen, > und die Dinge notieren, die ich mir davon gemerkt habe. > Ich habe dabei versucht, Dinge wegzulassen, die so sind > wie in allen anderen Programmiersprachen oder zu Python 2 > geh=C3=B6ren, und kam auf folgendes: >=20 > Die Einr=C3=BCckung >=20 > Die Tiefe ist egal, aber wenn man zur=C3=BCckkehrt, so mu=C3=9F dies > zu einer vorher schon verwendeten =C3=BCbergeordneten Tiefe geschehen. >=20 > Muster >=20 > a: > b > c > d:=20 > e > f >=20 > H=C3=A4ufig werden vier Leerzeichen verwendet. >=20 > Literale >=20 > Es gibt unter anderem eine Art von Listenliteral mit eckigen > Klammern. >=20 > Kommentare >=20 > Endzeilenkommentar mit =C2=BB#=C2=AB. >=20 > Operatoren >=20 > =C2=BB//=C2=AB ist die ganzzahlige Division. >=20 > =C2=BB+=C2=AB kann nicht verwendet werden, um eine Zeichenfolge mit > einer Zahl zu verketten, es kann aber Zahlen addieren oder > Zeichenfolgen verketten. >=20 > Wenn ein Ausdruck sich =C3=BCber mehrere Zeilen erstrecken soll, > mu=C3=9F er entweder eingeklammern werden, oder die fortgesetzten > Zeilen m=C3=BCssen mit einem inversen Schr=C3=A4gstrich =C2=BB\=C2=AB e= nden. >=20 > Aufrufe >=20 > Um eine Zufallsfunktion verwenden zu k=C3=B6nnen, mu=C3=9F erst ein > Zufallsmodul importiert werden. >=20 > Ausgeben >=20 > =C2=BBprint=C2=AB rundet Zahlen bei der Ausgabe etwas, w=C3=A4hrend die > Konsole alle Nachkommastellen anzeigt. >=20 > Einlesen >=20 > =C2=BBinput(prompt)=C2=AB liefert einen String, der dann mit =C2=BBfloa= t=C2=AB > in eine Zahl gewandelt werden kann. >=20 > Variablen >=20 > Eine Variable wird durch eine Zuweisung definiert. Eine > Variable hat keinen Typ, sondern Werte haben einen Typ. >=20 > Eine Variable wird an eine Liste gebunden, die Liste wird > also bei einer Zuweisung nicht kopiert. (Kopieren kann mit > nachgestelltem slice =C2=BB[:]=C2=AB erfolgen.) >=20 > Funktionsdefinitionen >=20 > Soll die Funktion einen leeren Rumpf haben, schreibt man > =C2=BBpass=C2=AB. >=20 > Muster >=20 > def f(a,b): > pass >=20 > Lokale Variablen >=20 > Eine lokale Variable wird durch eine Zuweisung in einer > Funktion definiert und verdeckt dann eine eventuell > vorhandene gleichnamig globale Variable, wenn jene globale > Variable nicht zuvor mit =C2=BBglobal=C2=AB importiert wurde. >=20 > Kontrollstrukturen >=20 > =C2=BB=3D=3D=C2=AB bedeutet =C2=BBist gleich=C2=AB, und =C2=BB!=3D=C2= =AB bedeutet =C2=BBist nicht > gleich=C2=AB.=20 >=20 > Es gibt ein =C2=BBelseif=C2=AB (oder =C3=A4hnlich). >=20 > =C2=BBrange(2,7)=C2=AB ergibt einen Bereich (einen Iterator) und > =C2=BBrange(2)=C2=AB bedeutet =C2=BBrange(0,2)=C2=AB. >=20 > Spezielle Methoden >=20 > Die spezielle Methode =C2=BB__init__=C2=AB initialisiert Objekte einer > Klasse. >=20 > Muster >=20 > def __init__(self,...): > pass >=20 > Die spezielle Methode =C2=BB__string__=C2=AB repr=C3=A4sentiert Objekte > einer Klasse als Zeichenfolge. >=20 > Muster >=20 > def __string__(self,...): > return "string" >=20 > Vererbung=20 >=20 > Muster >=20 > class C(S) > ... >=20 > (Ende des Braindumps) >=20