Seite 2 von 2

Verfasst: Dienstag 4. Dezember 2007, 12:31
von BlackJack
Bein ``print`` würde ich noch die Klammern weglassen.

Und das letzte kannst Du auch so schreiben:

Code: Alles auswählen

sichern.write('fcd=%r N/mm^2\n' % fcd)
Wobei man bei der `repr()`-Darstellung halt auch immer die Ungenauigkeiten von Fliesskommazahlen sieht. Ist in der Regel nicht so erwünscht.

Verfasst: Dienstag 4. Dezember 2007, 13:11
von mathi
Ich möchte bei "print" deshalb die Klammern lassen, weil Python 3000 ja nicht mehr print sondern print() kennen wird!


Falsch?

Verfasst: Dienstag 4. Dezember 2007, 13:23
von BlackVivi
mathi hat geschrieben:Ich möchte bei "print" deshalb die Klammern lassen, weil Python 3000 ja nicht mehr print sondern print() kennen wird!


Falsch?
Bei Python3000 wird sich soviel ändern, das's sich nicht lohnt es schon jetzt zu tun. Also halte dich lieber an das jetzige, Software zum portieren wird es dann auch geben.

Verfasst: Dienstag 4. Dezember 2007, 13:24
von BlackJack
@mathi: Wenn Du dann mehrere Ausgaben machen willst, geht das mit den Klammern nicht mehr, weil die dann ein Tupel erzeugen. In Python <3.0 ist ``print`` nun einmal eine Anweisung und keine Funktion. Klammern erwecken beim lesen nur einen falschen Eindruck.

Für die Umsetzung von Python 2.x nach Python 3.0 wird ein Skript geschrieben, dass möglichst viele Veränderungen automatisch macht und mit ``print`` kann das Programm umgehen. Von folgenden Varianten kannst Du nur die erste auch in Python 2.x in Klammern setzen, die anderen *müssen* weiterhin ohne Klammern geschrieben werden:

Code: Alles auswählen

print 'hallo'
print 'Mein Name ist', name, '.  Wie heisst Du?'
print >>error_log, 'warning:', reason
Wenn Du jetzt schon mit den Klammern anfängst, hast Du also einen Mix in alten Programmen ohne einen wirklichen Grund oder Mehrwert.