Currently I am using this:
def _get_mac_ver():
import subprocess
p = subprocess.Popen(['sw_vers', '-productVersion'], stdout=subprocess.PIPE)
stdout, stderr = p.communicate()
return stdout.strip()
Is there a better version (eg: by using built-in Python API)?
>>> print _get_mac_ver()
10.6.3
Note: I tried os.uname()[2]
which prints 10.3.0 on a Snow Leopard system.
True to the philosophy that python comes with batteries included, there is a module in the standard library to do this: platform
.
See in particular the `mac_ver()' function:
>>> import platform
>>> platform.mac_ver()
('10.6.3', ('', '', ''), 'i386')
>>> print platform.mac_ver()[0]
10.6.3
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With