Seite 1 von 1

Wie wird 2-dimensionale Matrix gedruckt?

Verfasst: Montag 26. Januar 2004, 21:09
von spittlebug
Könnte mir bitte jemand einen Tipp geben wie man eine zweidimensionale Matrix vernünftig Zeile für Zeile printed. Dabei wird die Matrix als Dictionary erstellt. Siehe Bsp.

Code: Alles auswählen

for i in range(1,n+1):
        for j in range(1,m+1):
            x = c[i-1,j]+2
            y = c[i,j-1]+2
            if a[i-1] == b[j-1]:
                z = c[i-1,j-1]+1
            else:
                z = c[i-1,j-1]+1
        c[i,j] = min(x,y,z)

Re: Wie wird 2-dimensionale Matrix gedruckt?

Verfasst: Montag 26. Januar 2004, 22:47
von Voges
Hallo!
Dein Code wirkt etwas aus dem Zusammenhang gerissen. Meinst Du einfach sowas?

Code: Alles auswählen

for i in range(1,n+1):
    for j in range(1,m+1):
        print "%5d" % c[i,j],
    print ""
Die 5 natürlich nur eine Annahme, da nicht erkennbar ist, was für Werte die Dict-Einträge annehmen können.
BTW: Zeile 6 und 8 sind identisch ;-)
Jan

funzt..

Verfasst: Montag 26. Januar 2004, 23:58
von spittlebug
Hallo Jan,

danke für die Hilfe. Es hat einwandfrei funktioniert. Es ergeben sich nur Integer in der Matrix. Sieht gar nicht so schwer aus. Da muß ich wohl noch etwas Erfahrung sammeln mit Python :? .
Der Code entstammt einem Sequenzvergleich. Mit der 6. und 8. Zeile hast Du natürlich recht. In der 6 kommt "+1" weg, da die Elemente übereinstimmen.
Nochmals Danke.

Thomas

Schleifen rückwärts durchlaufen?

Verfasst: Montag 2. Februar 2004, 23:36
von Gast
Ich hätte da noch eine Frage, falls jemand nochmal in diesen thread schaut. Ich möchte meine Matrix von hinten nach vorn durchlaufen. Gibt es die Möglichkeit Schleifen zu benutzen die "rückwärts" zählen? Also sozusagen von n bis 0 bzw. m bis 0?

Gruß

spittlebug

Verfasst: Montag 2. Februar 2004, 23:58
von Dookie
Hi spittlebug,

for i in xrange(9, -1, -1): print i


Gruß

Dookie