簡體   English   中英

Python安裝位置(Windows)

[英]Python Installation Location (Windows)

我需要找出計算機上是否安裝了Python。

我的具體問題是,我正在分發一個帶有自己的解釋器和標准庫的程序(最終用戶可能沒有Python)。 在安裝中,如果有用戶,我可以選擇使用用戶自己安裝的Python解釋器+庫。 但是,我需要該位置。 我可以要求用戶手動找到它,但是我希望有一種自動方法。

由於我的安裝程序使用了我包含的解釋器,因此sys.prefix引用了包含的解釋器(我知道這一點是因為我嘗試了,我安裝了Python 2.7和3.3)。

我也嘗試使用subprocess.callsubprocess.call(['py', '-c', '"import sys; print sys.prefix"'])如果有一個這將使用標准的Python解釋器,但我我不確定如何捕獲此輸出。

因此,還有其他方法可以確定用戶計算機上是否安裝了默認的Python版本,以及在哪里?

實際上,根據我的其他答案,找到Python安裝目錄的一種更好的方法可能是檢查Windows注冊表,因為Python安裝程序會在其中放置一些信息。

看一下這個答案這個Python模塊

一些用戶可能已將其本地Python目錄放置在系統的PATH環境變量中,而某些用戶甚至可能已設置了PYTHONPATH環境變量。

您可以嘗試以下方法:

import os

if "python" in os.environ["PATH"].lower():
    # Confirm that the Python executable actually is there

if "PYTHONPATH" in os.environ.keys():
    # Same as in the last if...

至於subprocess.call(...) ,請為傳遞給文件對象的內容設置stdout參數,然后.read()為您提供的文件對象.read()來查看調用的輸出。

暫無
暫無

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

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