[Python-de] Was ich schon immer zu Python fragen wollte und mich nie getraut habe

Christian Tanzer tanzer at swing.co.at
Thu Oct 24 09:46:36 EDT 2002


martin at v.loewis.de (Martin v. Loewis) wrote:

> Gerson.Kurz at t-online.de (Gerson Kurz) writes:
> > [2] Wie frage ich korrekt auf "Umgebung ist Windows" ab?
> >
> > if os.name == "nt":
> >
> > wird ja wohl klappern unter 9x (keine Ahnung, ich habe kein 9x).
>
> Üblich ist eher
>
> if sys.platform == "win32":

Hmmm.

Ich hab das zum Anlaß genommen, meinen Code zu überprüfen. Beides wird
verwendet, allerdings kommt os.name wesentlich öfters vor.

Ausprobieren im Python Interpreter zeigte mir, warum:

$ python
Python 2.2.1 (#1, Jul 18 2002, 06:59:41)
[GCC 2.95.4 20011002 (Debian prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> sys.platform
'linux2'
>>> os.name
'posix'
>>>

Ich würde es eigentlich umgekehrt erwarten: `posix` als Platform und
`linux2` als os.name.

Leider kann ich nur unter Linux und WNT ausprobieren. Was liefern
andere Plattformen? Gibt's da irgendwo eine Liste?

Muß ich `os.name` verwenden, um auf Posix zu überprüfen, und
`sys.platform`, um auf Windows zu überprüfen? Yuck.

Ciao,
Christian

-- 
Christian Tanzer                                         tanzer at swing.co.at
Glasauergasse 32                                       Tel: +43 1 876 62 36
A-1130 Vienna, Austria                                 Fax: +43 1 877 66 92





More information about the Python-de mailing list