2009-09-14 11 views
7

Próbowałem:Jak uzyskać przyjazną nazwę systemu operacyjnego za pomocą Pythona 2.5?

print os.name 

a wyjście Dostałem:

:nt 

Jednakże chcę wyjście bardziej jak "Windows 98", albo "Linux".

Po sugestii w tej kwestii, próbowałem też:

import os 
print os.name 
import platform 
print platform.system() 
print platform.release() 

A mój wyjściowy był:

Traceback (most recent call last): 
    File "C:/Documents and Settings/BIU1LR/Desktop/python_programs/program/platform.py", line 3, in <module> 
    import platform 
    File "C:/Documents and Settings/BIU1LR/Desktop/python_programs/program\platform.py", line 4, in <module> 
    print platform.system() 
AttributeError: 'module' object has no attribute 'system' 

Używam Python 2.5.2. Co ja robię źle?

+0

OS nazwa serwera? Czy nazwa systemu operacyjnego klienta? (W przypadku tworzenia stron internetowych ...) –

+0

zobacz także http://stackoverflow.com/questions/1854/python-how-do-i-tell-what-os-im-running-on – NicDumZ

+0

import sys print (sys.version) daje nam wynik, dzięki któremu wiemy, z czym mamy do czynienia: –

Odpowiedz

36

Spróbuj:

import platform 
print platform.system(), platform.release() 

Próbowałem to na moim komputerze z Pythona 2.6 i mam to jako wyjście:

Windows XP 

Po swoimi najnowszymi edycjami, widzę, że nazywa swoją platformę skrypt .py. Powoduje to problem z nazewnictwem, ponieważ podczas wywoływania platform.system() i platform.release(), szuka w pliku, a nie w module platformy Pythona. Jeśli zmienisz nazwę pliku, wszystkie problemy powinny zostać rozwiązane.

13

to dlatego, że nazwałeś swój program "platformą". Dlatego podczas importowania modułu "platforma" Twój program jest importowany zamiast importu kołowego.

Spróbuj zmienić nazwę pliku na test_platform.py i będzie działać.

+0

* Kolizja przestrzeni nazw * – smci

1

dobrze to zależy od systemu operacyjnego: na przykład miałem przetestowane

platform.system() - in linux works, AIX works 
    platform.release()- in linux works, AIX gives a weird '1' with non other info 
    platform.dist() - in linux works, AIX gives a nothing '','','' 
    os.name   - resolves 'posix' in both :S 

Okna I naprawdę nie testować ani opieka: P

Powiązane problemy