Seite 1 von 1

String Formatierung

Verfasst: Mittwoch 25. März 2009, 16:51
von mzh
Hallo zusammen

Mit

Code: Alles auswählen

import os

for k, v in os.environ.items():
    print(("%s" + "=" + "%s") % (k, v))
kann ich mir alle System-/User Variablen und ihren zugehörigen Pfad ausgeben (sorry, wenn das nicht ganz richtig ist).
Ich will das nun so ausgeben, dass alle "="-Zeichen schön genau übereinander stehen und dann erst nach einem weitern Leerschlag die Pfade folgen. Ich habe das Gefühl, es lässt sich irgendwie mir rjust() oder ljust() machen, aber die bauen einfach zusätzliche Abstände ein.

Wäre dankbar für Hinweise.
mzh

Verfasst: Mittwoch 25. März 2009, 17:00
von derdon
Mit Python 2.5.2:

Code: Alles auswählen

>>> import os
>>> for k,v in os.environ.items():
...     print('%s = %s') % (k, v)

Re: String Formatierung

Verfasst: Mittwoch 25. März 2009, 17:01
von gerold
Hallo mzh!

Code: Alles auswählen

>>> import os
>>> max_len = max(len(key) for key in os.environ.keys())
>>> for key, value in os.environ.items():
...     print key.ljust(max_len), "=", value
...
mfg
Gerold
:-)

Verfasst: Mittwoch 25. März 2009, 17:09
von mzh
derdon hat geschrieben:Mit Python 2.5.2:

Code: Alles auswählen

>>> import os
>>> for k,v in os.environ.items():
...     print('%s = %s') % (k, v)
Hm, also das macht genau was ich hatte...

Re: String Formatierung

Verfasst: Mittwoch 25. März 2009, 17:11
von mzh
gerold hat geschrieben:Hallo mzh!

Code: Alles auswählen

>>> import os
>>> max_len = max(len(key) for key in os.environ.keys())
>>> for key, value in os.environ.items():
...     print key.ljust(max_len), "=", value
...
mfg
Gerold
:-)
Danke. Genau so.