Spaces:
Running
Running
"""is64bit.Python() --> boolean value of detected Python word size. is64bit.os() --> os build version""" | |
import sys | |
def Python(): | |
if sys.platform == "cli": # IronPython | |
import System | |
return System.IntPtr.Size == 8 | |
else: | |
try: | |
return sys.maxsize > 2147483647 | |
except AttributeError: | |
return sys.maxint > 2147483647 | |
def os(): | |
import platform | |
pm = platform.machine() | |
if pm != ".." and pm.endswith("64"): # recent Python (not Iron) | |
return True | |
else: | |
import os | |
if "PROCESSOR_ARCHITEW6432" in os.environ: | |
return True # 32 bit program running on 64 bit Windows | |
try: | |
return os.environ["PROCESSOR_ARCHITECTURE"].endswith( | |
"64" | |
) # 64 bit Windows 64 bit program | |
except IndexError: | |
pass # not Windows | |
try: | |
return "64" in platform.architecture()[0] # this often works in Linux | |
except: | |
return False # is an older version of Python, assume also an older os (best we can guess) | |
if __name__ == "__main__": | |
print("is64bit.Python() =", Python(), "is64bit.os() =", os()) | |