كيف يمكنني العثور على نظام التشغيل الحالي في بايثون؟[ينسخ]

StackOverflow https://stackoverflow.com/questions/110362

  •  02-07-2019
  •  | 
  •  

سؤال

التكرار المحتمل:
بايثون:ما هو نظام التشغيل الذي أعمل عليه؟

كما يقول العنوان، كيف يمكنني العثور على نظام التشغيل الحالي في بايثون؟

هل كانت مفيدة؟

المحلول

أنا عادة استخدام sys.platform للحصول على المنصة. sys.platform سوف يميز بين لينكس، ويونكس الأخرى، وOS X في حين os.name يكون "posix" لاجلهم جميعا.

للحصول على معلومات أكثر تفصيلاً، استخدم وحدة النظام الأساسي.يحتوي هذا على وظائف مشتركة بين الأنظمة الأساسية ستمنحك معلومات حول بنية الجهاز ونظام التشغيل وإصدار نظام التشغيل وإصدار Python وما إلى ذلك.كما أن لديها وظائف خاصة بنظام التشغيل للحصول على أشياء مثل توزيعة Linux المحددة.

نصائح أخرى

إذا كنت تريد بيانات يمكن للمستخدم قراءتها ولكن لا تزال مفصلة، ​​فيمكنك استخدامها منصة.منصة ()

>>> import platform
>>> platform.platform()
'Linux-3.3.0-8.fc16.x86_64-x86_64-with-fedora-16-Verne'

platform لديه أيضًا بعض الطرق المفيدة الأخرى:

>>> platform.system()
'Windows'
>>> platform.release()
'XP'
>>> platform.version()
'5.1.2600'

إليك بعض المكالمات المحتملة المختلفة التي يمكنك إجراؤها لتحديد مكانك

import platform
import sys

def linux_distribution():
  try:
    return platform.linux_distribution()
  except:
    return "N/A"

print("""Python version: %s
dist: %s
linux_distribution: %s
system: %s
machine: %s
platform: %s
uname: %s
version: %s
mac_ver: %s
""" % (
sys.version.split('\n'),
str(platform.dist()),
linux_distribution(),
platform.system(),
platform.machine(),
platform.platform(),
platform.uname(),
platform.version(),
platform.mac_ver(),
))

تم تشغيل مخرجات هذا البرنامج النصي على عدد قليل من الأنظمة المختلفة (Linux وWindows وSolaris وMacOS) والبنيات (x86 وx64 وItanium وpower pc وsparc) متاحة هنا: https://github.com/hpcugent/easybuild/wiki/OS_flavor_name_version

import os
print os.name

يمنحك هذا المعلومات الأساسية التي ستحتاجها عادةً.للتمييز بين الإصدارات المختلفة من Windows، على سبيل المثال، سيتعين عليك استخدام طريقة خاصة بالنظام الأساسي.

https://docs.python.org/library/os.html

لاستكمال منشور جريج، إذا كنت تستخدم نظام posix، والذي يتضمن MacOS وLinux وUnix وما إلى ذلك.يمكنك استخدام os.uname() للتعرف بشكل أفضل على نوع النظام.

شيء على طول السطور:

import os
if (os.name == "posix"):
    print os.system("uname -a")
# insert other possible OSes here
# ...
else:
    print "unknown OS"
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top