迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

检查 Python 运行的是 32 位还是 64 位

作者:迹忆客 最近更新:2022/12/07 浏览次数:

使用 python -c "import sys; print(sys.maxsize > 2**32)" 命令检查 Python 是以 32 位还是 64 位运行的。 如果 Python 以 64 位运行,该命令将返回 True;如果以 32 位运行,则返回 False。

# 👇️ 如果 Python 解释器以 64 位运行,则返回 True
# 适用于 Linux、macOS 和 Windows
$ python -c "import sys; print(sys.maxsize > 2**32)"

Python 运行的是 64 位

我们可以使用相同的方法从脚本内部检查 Python 解释器运行的是 32 位还是 64 位。

import sys

is_64bits = sys.maxsize > 2**32
print(is_64bits)

if is_64bits:
    print('✅ Python is running as 64-bit application')
else:
    print('✅ Python is running as 32-bit application')

Python 运行的是 64 位代码

如果 Python 解释器以 64 位运行,则 sys.maxsize > 2**32 表达式返回 True,如果以 32 位运行,则返回 False

这是文档推荐的方法。

sys.maxsize 属性返回一个整数,在 32 位平台上通常为 2**31 - 1,在 64 位平台上通常为 2**63 - 1

如果 sys.maxsize 属性返回大于 2**32 的值,则 Python 解释器以 64 位运行。

这种方法适用于 Windows、macOS 和 Linux。

Windows系统检查 python 32 位还是 64 位

如果使用的是 Windows,我们还可以启动 shell 并查看消息以检查我们的 Python 是否作为 32 位或 64 位应用程序运行。

Windows 检查 32 位或 64 位 python 解释器

“[MSC v.1933 64 位 (AMD64)]”消息表明 Python 正在作为 64 位应用程序运行。

一些在线示例可能会使用 platform.architecture 方法来检查 Python 解释器是否以 32 位或 64 位运行。

import platform

print(platform.architecture()[0])  # 👉️ 64bit

python platform architecture检查是否64位

但是,该方法的输出对于 macOS 和其他一些平台并不可靠,因为可执行文件可能是包含多种体系结构的通用文件。

sys.maxsize > 2**32 表达式在所有平台上都是可靠的。

我们还可以使用 struct.calcsize() 方法来检查 Python 是作为 32 位还是 64 位应用程序运行。

import struct

print(struct.calcsize('P') * 8)  # 👉️ 64

if struct.calcsize('P') * 8 == 64:
    print('Python is running as 64-bit application')
else:
    print('Python is running as 32-bit application')

P 字符表示 void * (通用指针)。该指针在 32 位系统上为 4 个字节,在 64 位系统上为 8 个字节。

调用 struct.calcsize() 方法计算存储单个指针所需的字节数。

结果在 32 位系统上为 4,在 64 位系统上为 8。

我们将 4 或 8 乘以 8 得到 32 位或 64 位的结果。

选择哪种方法是个人喜好的问题。 我会使用 sys.maxsize > 2**32 因为它在文档中被推荐并且适用于所有操作系统。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中的 Pandas 插入方法

发布时间:2024/04/23 浏览次数:112 分类:Python

本教程介绍了如何在 Pandas DataFrame 中使用 insert 方法在 DataFrame 中插入一列。

Pandas 重命名多个列

发布时间:2024/04/22 浏览次数:199 分类:Python

本教程演示了如何使用 Pandas 重命名数据框中的多个列。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便