Hướng dẫn python path environment variable - biến môi trường đường dẫn python

Tài liệu này nhằm mục đích đưa ra một cái nhìn tổng quan về hành vi cụ thể của Windows mà bạn nên biết khi sử dụng Python trên Microsoft Windows.

3.1. Cài đặt Python¶Installing Python¶

Không giống như hầu hết các hệ thống và dịch vụ Unix, Windows không yêu cầu Python tự nhiên và do đó không cài đặt trước phiên bản Python. Tuy nhiên, nhóm CPython đã biên soạn các trình cài đặt Windows (gói MSI) với mỗi bản phát hành trong nhiều năm.

Với sự phát triển liên tục của Python, một số nền tảng từng được hỗ trợ trước đó không còn được hỗ trợ (do thiếu người dùng hoặc nhà phát triển). Kiểm tra PEP 11 để biết chi tiết về tất cả các nền tảng không được hỗ trợ.PEP 11 for details on all unsupported platforms.

  • DOS và Windows 3.x không được chấp nhận vì Python 2.0 và mã cụ thể cho các hệ thống này đã bị xóa trong Python 2.1.

  • Lên đến 2,5, Python vẫn tương thích với Windows 95, 98 và tôi (nhưng đã đưa ra cảnh báo không dùng nữa khi cài đặt). Đối với Python 2.6 (và tất cả các bản phát hành sau), sự hỗ trợ này đã bị loại bỏ và các bản phát hành mới chỉ dự kiến ​​sẽ hoạt động trên gia đình Windows NT.

  • Windows CE vẫn được hỗ trợ.

  • Trình cài đặt Cygwin cũng cung cấp để cài đặt trình thông dịch Python (xem nguồn gói Cygwin, phát hành bảo trì)

Xem Python cho Windows (và DOS) để biết thông tin chi tiết về các nền tảng với trình cài đặt được biên dịch trước.

3.2. Gói thay thếAlternative bundles¶

Bên cạnh phân phối Cpython tiêu chuẩn, có các gói được sửa đổi bao gồm cả chức năng bổ sung. Sau đây là danh sách các phiên bản phổ biến và các tính năng chính của chúng:

ActivePython

Trình cài đặt với khả năng tương thích đa nền tảng, tài liệu, PYWIN32

Phân phối Python

Các mô -đun phổ biến (như Pywin32) với tài liệu tương ứng của họ, bộ công cụ để xây dựng các ứng dụng Python có thể mở rộng

Lưu ý rằng các gói này có khả năng cài đặt các phiên bản Python cũ hơn.

3.3. Định cấu hình Python¶Configuring Python¶

Để chạy Python một cách hoàn hảo, bạn có thể phải thay đổi một số cài đặt môi trường nhất định trong Windows.

3.3.1. Acursus: thiết lập các biến môi trườngExcursus: Setting environment variables¶

Windows có hộp thoại tích hợp để thay đổi các biến môi trường (hướng dẫn sau đây áp dụng cho chế độ xem cổ điển XP): Nhấp chuột phải vào biểu tượng cho máy của bạn (thường được đặt trên máy tính để bàn của bạn và được gọi là máy tính của tôi) và chọn ở đó. Sau đó, mở tab nâng cao và nhấp vào nút biến môi trường.Advanced tab and click the Environment Variables button.

Tóm lại, con đường của bạn là:

Trong hộp thoại này, bạn có thể thêm hoặc sửa đổi các biến người dùng và hệ thống. Để thay đổi các biến hệ thống, bạn cần truy cập không bị hạn chế vào máy của mình (nghĩa là quyền của quản trị viên).

Một cách khác để thêm các biến vào môi trường của bạn là sử dụng lệnh set:set command:

set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

Để làm cho cài đặt này vĩnh viễn, bạn có thể thêm dòng lệnh tương ứng vào autoexec.bat của bạn. MSConfig là một giao diện đồ họa cho tệp này.msconfig is a graphical interface to this file.

Xem các biến môi trường cũng có thể được thực hiện đơn giản hơn: Lời nhắc lệnh sẽ tự động mở rộng các chuỗi thành phần trăm dấu hiệu:

Tham khảo bộ /? Để biết chi tiết về hành vi này.set /? for details on this behaviour.

3.3.2. Tìm Python có thể thực thiFinding the Python executable¶

Bên cạnh việc sử dụng mục Menu Bắt đầu được tạo tự động cho trình thông dịch Python, bạn có thể muốn bắt đầu Python trong dấu nhắc DOS. Để thực hiện công việc này, bạn cần đặt biến môi trường %PATH% của mình để bao gồm thư mục phân phối Python của bạn, được phân định bởi một dấu chấm phẩy từ các mục khác. Một biến ví dụ có thể trông như thế này (giả sử hai mục đầu tiên là mặc định của windows):%PATH% environment variable to include the directory of your Python distribution, delimited by a semicolon from other entries. An example variable could look like this (assuming the first two entries are Windows’ default):

C:\WINDOWS\system32;C:\WINDOWS;C:\Python25

Gõ Python trên dấu nhắc lệnh của bạn bây giờ sẽ kích hoạt trình thông dịch Python. Do đó, bạn cũng có thể thực thi các tập lệnh của mình với các tùy chọn dòng lệnh, xem tài liệu dòng lệnh.python on your command prompt will now fire up the Python interpreter. Thus, you can also execute your scripts with command line options, see Command line documentation.

3.3.3. Tìm mô -đunFinding modules¶

Python thường lưu trữ thư viện của nó (và do đó thư mục gói trang web của bạn) trong thư mục cài đặt. Vì vậy, nếu bạn đã cài đặt Python lên C:\Python\, thư viện mặc định sẽ nằm trong C:\Python\Lib\ và các mô-đun bên thứ ba nên được lưu trữ trong C:\Python\Lib\site-packages\.

Đây là cách sys.path được điền trên Windows:

  • Một mục trống được thêm vào khi bắt đầu, tương ứng với thư mục hiện tại.

  • Nếu biến môi trường PYTHONPATH tồn tại, như được mô tả trong các biến môi trường, các mục của nó sẽ được thêm vào tiếp theo. Lưu ý rằng trên các cửa sổ, các đường dẫn trong biến này phải được phân tách bằng các dấu chấm phẩy, để phân biệt chúng với đại tràng được sử dụng trong định danh ổ đĩa (____10, v.v.).PYTHONPATH exists, as described in Environment variables, its entries are added next. Note that on Windows, paths in this variable must be separated by semicolons, to distinguish them from the colon used in drive identifiers (

    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    0 etc.).

  • Các đường dẫn ứng dụng bổ sung có thể được thêm vào trong sổ đăng ký dưới dạng Subkey của

    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    1 theo cả tổ ong
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    2 và
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    3. Các subkey có chuỗi đường dẫn được phân phối dấu chấm phẩy vì giá trị mặc định của chúng sẽ khiến mỗi đường dẫn được thêm vào sys.path. (Lưu ý rằng tất cả các trình cài đặt đã biết chỉ sử dụng HKLM, vì vậy HKCU thường trống.)

  • Nếu biến môi trường

    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    5 được đặt, nó được coi là nhà Python Home. Mặt khác, đường dẫn của Python chính có thể thực thi được sử dụng để xác định vị trí của một tập tin mang tính bước ngoặt của người Hồi giáo (
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    6) để suy luận về nhà Python Home. Nếu một ngôi nhà Python được tìm thấy, các thư mục phụ có liên quan được thêm vào sys.path (
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    8,
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    9, v.v.) dựa trên thư mục đó. Mặt khác, con đường Python lõi được xây dựng từ Pythonpath được lưu trữ trong sổ đăng ký.
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    5 is set, it is assumed as “Python Home”. Otherwise, the path of the main Python executable is used to locate a “landmark file” (
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    6) to deduce the “Python Home”. If a Python home is found, the relevant sub-directories added to sys.path (
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    8,
    C:\WINDOWS\system32;C:\WINDOWS;C:\Python25
    
    9, etc) are based on that folder. Otherwise, the core Python path is constructed from the PythonPath stored in the registry.

  • Nếu ngôi nhà Python không thể được định vị, không có PYTHONPATH được chỉ định trong môi trường và không tìm thấy mục đăng ký nào, một đường dẫn mặc định với các mục tương đối được sử dụng (ví dụ:

    ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
    
    1, v.v.).PYTHONPATH is specified in the environment, and no registry entries can be found, a default path with relative entries is used (e.g.
    ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
    
    1, etc).

Kết quả cuối cùng của tất cả những điều này là:

  • Khi chạy

    ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
    
    2 hoặc bất kỳ .exe nào khác trong thư mục Python chính (có thể là phiên bản được cài đặt hoặc trực tiếp từ thư mục PCBUILD), đường dẫn lõi được suy ra và các đường dẫn cốt lõi trong sổ đăng ký bị bỏ qua. Các đường dẫn ứng dụng khác của người Viking trong sổ đăng ký luôn được đọc.

  • Khi Python được lưu trữ trong một .exe khác (thư mục khác nhau, được nhúng qua COM, v.v.), nhà Py Python sẽ không được suy luận, vì vậy con đường cốt lõi từ sổ đăng ký được sử dụng. Các đường dẫn ứng dụng khác của người Viking trong sổ đăng ký luôn được đọc.

  • Nếu Python có thể tìm thấy nhà của nó và không có sổ đăng ký (ví dụ: Frozen .exe, một số thiết lập cài đặt rất lạ), bạn sẽ nhận được một đường dẫn với một số đường dẫn mặc định, nhưng tương đối.

3.3.4. Thực hiện các tập lệnhExecuting scripts¶

Các tập lệnh Python (các tệp có tiện ích mở rộng

ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
3) sẽ được thực thi bởi python.exe theo mặc định. Việc thực thi này mở một thiết bị đầu cuối, vẫn mở ngay cả khi chương trình sử dụng GUI. Nếu bạn không muốn điều này xảy ra, hãy sử dụng tiện ích mở rộng
ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
4 sẽ khiến tập lệnh được thực hiện bởi pythonw.exe theo mặc định (cả hai tệp thực thi đều được đặt ở cấp cao nhất của thư mục cài đặt Python của bạn). Điều này ngăn chặn cửa sổ đầu cuối khi khởi động.python.exe by default. This executable opens a terminal, which stays open even if the program uses a GUI. If you do not want this to happen, use the extension
ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
4 which will cause the script to be executed by pythonw.exe by default (both executables are located in the top-level of your Python installation directory). This suppresses the terminal window on startup.

Bạn cũng có thể thực hiện tất cả các tập lệnh

ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
3 với pythonw.exe, ví dụ, đặt cái này thông qua các cơ sở thông thường (có thể yêu cầu quyền hành chính):pythonw.exe, setting this through the usual facilities, for example (might require administrative rights):

  1. Khởi chạy một dấu nhắc lệnh.

  2. Liên kết nhóm tệp chính xác với các tập lệnh

    ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
    
    3:

  3. Chuyển hướng tất cả các tệp Python sang thực thi mới:

    ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
    

3.4. Các mô -đun bổ sungAdditional modules¶

Mặc dù Python nhằm mục đích di động trong số tất cả các nền tảng, nhưng có những tính năng duy nhất cho Windows. Một vài mô -đun, cả trong thư viện tiêu chuẩn và bên ngoài, và các đoạn trích tồn tại để sử dụng các tính năng này.

Các mô-đun tiêu chuẩn dành riêng cho Windows được ghi lại trong các dịch vụ cụ thể của Windows Windows.MS Windows Specific Services.

3.4.1. Pywin32¶PyWin32¶

Mô-đun PYWIN32 của Mark Hammond là một tập hợp các mô-đun cho hỗ trợ dành riêng cho Windows. Điều này bao gồm các tiện ích cho:

  • Mô hình đối tượng thành phần (COM)

  • Cuộc gọi API Win32

  • Đăng ký

  • Nhật ký sự kiện

  • Giao diện người dùng Microsoft Foundation Class (MFC)

Pythonwin là một ứng dụng MFC mẫu được vận chuyển với pywin32. Nó là một IDE có thể nhúng với trình gỡ lỗi tích hợp.

3.4.2. Py2exe¶Py2exe¶

PY2EXE là một tiện ích mở rộng

ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
7 (xem mở rộng Distutils) kết thúc các tập lệnh Python thành các chương trình Windows có thể thực thi (
ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
8 tệp). Khi bạn đã thực hiện việc này, bạn có thể phân phối ứng dụng của mình mà không yêu cầu người dùng cài đặt Python.Extending Distutils) which wraps Python scripts into executable Windows programs (
ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
8 files). When you have done this, you can distribute your application without requiring your users to install Python.

3.4.3. Wconio¶WConio¶

Vì lớp xử lý thiết bị đầu cuối tiên tiến của Python,

ftype Python.File=C:\Path\to\pythonw.exe "%1" %*
9, bị giới hạn trong các hệ thống giống UNIX, cũng có một thư viện dành riêng cho Windows: Windows Console I/O cho Python.

Wconio là một trình bao bọc cho Turbo-CTHER autoexec.bat0, được sử dụng để tạo giao diện người dùng văn bản.

3.5. Biên dịch Python trên Windows¶Compiling Python on Windows¶

Nếu bạn muốn tự biên dịch Cpython, điều đầu tiên bạn nên làm là lấy nguồn. Bạn có thể tải xuống nguồn phát hành mới nhất hoặc chỉ lấy một thanh toán mới.

Đối với Microsoft Visual C ++, là trình biên dịch mà các bản phát hành Python chính thức được xây dựng, cây nguồn chứa các tệp giải pháp/dự án. Xem autoexec.bat1 trong các thư mục tương ứng của họ:

Danh mục

Phiên bản MSVC

Phiên bản Visual Studio

autoexec.bat2

6.0

97

autoexec.bat3

7.1

2003

autoexec.bat4

8.0

2005

autoexec.bat5

9.0

2008

Lưu ý rằng không phải tất cả các thư mục xây dựng này đều được hỗ trợ đầy đủ. Đọc các ghi chú phát hành để xem phiên bản trình biên dịch nào mà các bản phát hành chính thức cho phiên bản của bạn được xây dựng.

Kiểm tra autoexec.bat6 để biết thông tin chung về quy trình xây dựng.

Đối với các mô -đun mở rộng, tham khảo các tiện ích mở rộng xây dựng C và C ++ trên Windows.Building C and C++ Extensions on Windows.

3.6. Các nguồn lực khác¶Other resources¶