加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

在Python中,如何确定内核是以32位还是64位模式运行?

发布时间:2020-12-16 23:15:55 所属栏目:Python 来源:网络整理
导读:我在 Linux,Mac OS和Windows上运行python 2.6,需要确定内核是以32位还是64位模式运行.有没有办法做到这一点? 我看过platform.machine(),但这在Windows上无法正常工作. 我也看过platform.architecture(),而这在64位Windows上运行32位python时不起作用. 注意
我在 Linux,Mac OS和Windows上运行python 2.6,需要确定内核是以32位还是64位模式运行.有没有办法做到这一点?

我看过platform.machine(),但这在Windows上无法正常工作.

我也看过platform.architecture(),而这在64位Windows上运行32位python时不起作用.

注意:看起来python 2.7有一个修复,使platform.architecture()正常工作.不幸的是,我需要使用python 2.6(至少现在).

(编辑:从离线的人们谈话,听起来似乎没有一个强大的Python唯一的方式来做出这个决心,而不诉诸邪恶的黑客,我只是好奇什么邪恶的黑客人们在他们的项目中使用使用python 2.6.例如,在Windows上可能需要查看PROCESSOR_ARCHITEW6432环境变量并检查AMD64)

解决方法

如何在 issue7860左右工作
import os
import sys
import platform

def machine():
    """Return type of machine."""
    if os.name == 'nt' and sys.version_info[:2] < (2,7):
        return os.environ.get("PROCESSOR_ARCHITEW6432",os.environ.get('PROCESSOR_ARCHITECTURE',''))
    else:
        return platform.machine()

def os_bits(machine=machine()):
    """Return bitness of operating system,or None if unknown."""
    machine2bits = {'AMD64': 64,'x86_64': 64,'i386': 32,'x86': 32}
    return machine2bits.get(machine,None)

print (os_bits())

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读