簡體   English   中英

我應該使用 Python 32bit 還是 Python 64bit

[英]Should I use Python 32bit or Python 64bit

我有一個win7 64位安裝。 我必須使用 Python 64 位嗎? 無論如何,32 位和 64 位 Python 版本之間有什么區別? 不同的 Python 包(例如 south、django、mysqldb 等)是否只支持 32 位/64 位?

64 位版本將允許單個進程使用比 32 位更多的 RAM,但是您可能會發現內存占用量加倍取決於您在 RAM 中存儲的內容(尤其是整數)。

例如,如果您的應用需要 > 2GB 的 RAM,因此您從 32 位切換到 64 位,您可能會發現您的應用現在需要 > 4GB 的 RAM。

檢查您的所有 3rd 方模塊是否在 64 位可用,否則同時堅持 32 位可能更容易

根據我的經驗,使用 32 位版本更無故障。 除非您正在處理大量使用內存的應用程序(主要是科學計算,使用超過 2GB 的內存),否則最好使用 32 位版本,因為:

  1. 您通常使用較少的內存。
  2. 使用 COM 的問題較少(因為您使用的是 Windows)。
  3. 如果您必須加載 DLL,它們很可能也是 32 位的。 Python 64 位無法加載 32 位庫,除非運行另一個 Python(這次是 32 位)並使用 IPC。
  4. 如果必須加載自己編譯的 DLL,則必須將它們編譯為 64 位,這通常很難做到(特別是在 Windows 上使用 MinGW 時)。
  5. 如果您曾經使用過 PyInstaller 或 py2exe,這些工具將生成與您的 Python 解釋器具有相同位數的可執行文件。

您不需要使用 64 位,因為 Windows 將使用 wow64 模擬 32 位程序。 但是使用本機版本(64 位)將為您提供更高的性能。

僅當您必須處理大量數據時才使用 64 位版本,在這種情況下,64 位的性能更好,但有 John La Rooy 所說的不便; 如果沒有,請堅持使用 32 位。

我在 32 時運行 python 應用程序(運行大型數據幀)時遇到問題 - 收到 MemoryError 消息,而在 64 時它運行良好。

像 tensorflow 2.x 這樣的機器學習包被設計為只在 64 位 Python 上工作,因為它們是內存密集型的。

自從收到火炬安裝錯誤以來,我一直在使用 32 位版本。 然后我下載64位python問題解決了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM