Twitter (was mache ich gerade?)

    Suche

     

    Credits

    Archiv

    Mai 2006
    Mo
    Di
    Mi
    Do
    Fr
    Sa
    So
     1 
     2 
     3 
     4 
     5 
     6 
     7 
     8 
     9 
    13
    14
    20
    21
    22
    23
    25
    27
    28
    29
    31
     
     
     
     
     

    Status

    Online seit 6705 Tagen
    Zuletzt aktualisiert: 17. Apr, 22:03

    Counter & Co.

    Egoload - Verträumter Idealist
    Mein
Koordinaten auf der EgoMap:  93,2
    100% Heidnisch

    Locations of visitors to this page

    Donnerstag, 11. Mai 2006

    Variablen II: Mehrdimensionalität

    Es kommt häufiger vor, dass man nicht einfache Datenreihen speichern will, sondern komplexe, zusammenhängende Datensätze. In diesem Fall ist man mit mehrdimensionalen Feldern ganz gut bedient:
    
    >>> aufzaehlung=((3.491,"Pi"),(42,"Anhalter"))
    >>> aufzaehlung
    ((3.4910000000000001, 'Pi'), (42, 'Anhalter'))
    >>> aufzaehlung[0]
    (3.4910000000000001, 'Pi')
    >>> aufzaehlung[0][1]
    'Pi'
    
    Verwendet man in einem mehrdimensionalen Tupel also lediglich eine "Koordinate", wird der gesamte darin enthaltene Tupel ausgegeben, die zweite Koordinate bestimmt das auszugebende Objekt innerhalb des Tupels.
    Im Gegensatz zu einigen anderen Sprachen kann die Anzahl der Dimensionen in einem Tupel variieren, was auf der einen Seite positiv für den Speicherverbrauch ist, andererseits aber natürlich bedeutet, dass man selbst dafür Sorge tragen muß, nur auf gültige Daten zuzugreifen. Beispiel:
    
    >>> netzdaten=(("cptsalek","https://cptsalek.twoday.net","cptsalekweb.de"),
    ...            ("cptcalhoun","https://cptcalhoun.twoday.net"))
    
    Hier haben wir einen Tupel namens "netzdaten", der zwei Datensätze enthält, wobei der erste drei Strings umfaßt, der zweite jedoch nur zwei. Es wäre also schön eine Möglichkeit zu haben, sich das im Programm auch ausgeben zu lassen. Gibt es auch:
    
    >>> len(netzdaten)
    2
    >>> len(netzdaten[0])
    3
    >>> len(netzdaten[1])
    2
    >>> len(netzdaten[1][0])
    10
    
    Der Befehl len() gibt die Länge eines Objektes zurück. Wird nur "netzdaten" angegeben, umfaßt das Objekt in der Tat zwei Tupel. Der erste Datensatz, bezeichnet durch netzdaten[0], seinem Index, enthält die besagten drei Strings. Der len()-Befehl funktioniert auch bei reinen Strings, wie das letzte Beispiel zeigt, das die Länge des Namens "cptcalhoun" zurückliefert.

    Variablen

    Python benötigt keine Variablendeklaration am Anfang einer Funktion, wie das z.B. bei C der Fall ist. Typenänderungen werden entweder automatisch vorgenommen, oder müssen vom Programmierer per Funktion vorgenommen werden, z.B. wenn eine Zahl an einen String angehängt werden sollen.
    Neben Variablen mit unterschiedlichen Wertebereichen, gemäß den Definitionen für Integer, Long Integer und einigen anderen mehr, kennt Python auch "Sequenzen", wozu Strings, Tupel und Listen gehören.
    Strings sind einfache Zeichenketten wie z.B.
    
    >>> begruessung="Hallo Welt"
    
    Hierauf lassen sich einfache Operationen anwenden:
    
    >>> begruessung="Hallo Welt"
    >>> satzzeichen="!"
    >>> begruessung=begruessung+satzzeichen
    >>> print begruessung
    Hallo Welt!
    >>> print begruessung[0]
    H
    >>> print begruessung[0:5]
    Hallo
    >>> print begruessung[:5]
    Hallo
    >>> print begruessung[6:]
    Welt!
    >>> print begruessung[-5:]
    Welt!
    >>> print begruessung[-5:-1]
    Welt
    
    Die ">>>" stehen für eine interaktive Interpretersession, man kann Python also einfach so aufrufen, und Befehle eingeben. Zum Demonstrieren und Experimentieren reicht das oftmals aus.
    Übrigens kann man den print-Befehl zur Anzeige auch weglassen, wenn man nur einen Variablennamen angibt, unterstellt einem Python, dass man das/die Objekte angezeigt bekommen möchte.

    Tupel sind Aneinanderreihungen von Werten, wobei diese unterschiedlicher Art sein können. Genau wie bei Strings kann man auch bei Tupeln auf einzelne Elemente zugreifen:
    
    >>> aufzaehlung=(3.491, "Wort", 42)
    >>> aufzaehlung
    (3.4910000000000001, 'Wort', 42)
    >>> aufzaehlung[0]
    3.4910000000000001
    >>> aufzaehlung[1]="Ein Satz."
    Traceback (most recent call last):
      File "", line 1, in ?
    TypeError: object doesn't support item assignment
    
    Das Beispiel zeigt etwas, was auch für Strings gilt: Sie lassen sich nicht verändern, sobald man versucht, einzelne Elemente zu ändern, gibt es eine Fehlermeldung. Verändert man augenscheinlich einen ganzen String oder Tupel, z.B. mittels aufzaehlung=, so wird ein neues Objekt angelegt, und das alte der Garbage Collection zugeführt.

    Aktuelle Beiträge

    Im happy I finally registered
    Excellent write-up. I absolutely love this site. Continue...
    http://mittenmail3.isblog.net/pick-a-winner-via-hashtag-entry-for-twitter-and-instagram-woobox-bl... (Gast) - 17. Apr, 22:03
    Just want to say Hi!
    I all the time emailed this blog post page to all...
    how to get instagram likes (Gast) - 30. Mär, 23:20
    Im happy I now signed...
    Hello, There's no doubt that your website could possibly...
    buy instagram followers cheap (Gast) - 30. Mär, 09:27
    Hallo Miau!
    Ich will einen schönen Tag wünschen, mit unseren Schmusekatzen....
    SCHLAGLOCH - 4. Apr, 14:51
    Sehe hier nut Tag und...
    Wo ist das Jahr an dem der Text geschrieben wurde?
    Gast (Gast) - 3. Mär, 20:38

    User Status

    Du bist nicht angemeldet.

    ...wenn man trotzdem lacht
    Atari Mega ST
    Auf Arbeit
    Bloggen
    Bookmarks & Links
    BSD
    Bundeswehr
    CCC07
    Computing
    Contentmafia
    Datenschutz
    DRM
    Fahrrad
    Finanzkrise
    Fundsachen
    G8
    ... weitere
    Profil
    Abmelden
    Weblog abonnieren