Giao diện trình thông dịch tương tự như giao diện của UNIX shell, nhưng cung cấp một số phương thức triệu gọi bổ sung
Khi được gọi với đầu vào tiêu chuẩn được kết nối với thiết bị tty, nó sẽ nhắc các lệnh và thực thi chúng cho đến khi một EOF [ký tự cuối tệp, bạn có thể tạo ký tự đó bằng Ctrl-D trên UNIX hoặc Ctrl-Z, Enter trên Windows] là
Khi được gọi với đối số tên tệp hoặc với tệp làm đầu vào tiêu chuẩn, nó sẽ đọc và thực thi tập lệnh từ tệp đó
Khi được gọi với đối số tên thư mục, nó sẽ đọc và thực thi một tập lệnh có tên thích hợp từ thư mục đó
Khi được gọi bằng
python myscript.py
82, nó sẽ thực thi [các] câu lệnh Python được cung cấp dưới dạng lệnh. Lệnh ở đây có thể chứa nhiều câu lệnh được phân tách bằng dòng mới. Khoảng trắng hàng đầu có ý nghĩa quan trọng trong các câu lệnh PythonKhi được gọi bằng
python myscript.py
83, mô-đun đã cho nằm trên đường dẫn mô-đun Python và được thực thi dưới dạng tập lệnh
Ở chế độ không tương tác, toàn bộ đầu vào được phân tích cú pháp trước khi được thực thi
Một tùy chọn giao diện kết thúc danh sách các tùy chọn mà trình thông dịch sử dụng, tất cả các đối số liên tiếp sẽ kết thúc bằng ____00 – lưu ý rằng phần tử đầu tiên, chỉ số dưới 0 [
python myscript.py1], là một chuỗi phản ánh nguồn của chương trình-c ¶
Thực thi mã Python trong lệnh. lệnh có thể là một hoặc nhiều câu lệnh được phân tách bằng dòng mới, với khoảng trắng đầu đáng kể như trong mã mô-đun thông thường
Nếu tùy chọn này được đưa ra, phần tử đầu tiên của
python myscript.py0 sẽ là
python myscript.py3 và thư mục hiện tại sẽ được thêm vào đầu của
python myscript.py4 [cho phép nhập các mô-đun trong thư mục đó dưới dạng mô-đun cấp cao nhất]
Tăng sự kiện kiểm tra
python myscript.py5 với đối số
python myscript.py6. -m ¶
Tìm kiếm mô-đun có tên
python myscript.py4 và thực hiện nội dung của mô-đun đó dưới dạng mô-đun
python myscript.py8
Vì đối số là tên mô-đun, bạn không được cung cấp phần mở rộng tệp [
python myscript.py9]. Tên mô-đun phải là một tên mô-đun Python tuyệt đối hợp lệ, nhưng việc triển khai có thể không phải lúc nào cũng thực thi điều này [e. g. nó có thể cho phép bạn sử dụng tên có dấu gạch nối]
Tên gói [bao gồm cả gói không gian tên] cũng được phép. Khi một tên gói được cung cấp thay vì một mô-đun thông thường, trình thông dịch sẽ thực thi
python myscript.py00 làm mô-đun chính. Hành vi này cố ý tương tự như việc xử lý các thư mục và tệp nén được chuyển đến trình thông dịch dưới dạng đối số tập lệnh
Ghi chú
Không thể sử dụng tùy chọn này với các mô-đun tích hợp và mô-đun mở rộng được viết bằng C, vì chúng không có tệp mô-đun Python. Tuy nhiên, nó vẫn có thể được sử dụng cho các mô-đun được biên dịch trước, ngay cả khi tệp nguồn gốc không có sẵn
Nếu tùy chọn này được cung cấp, phần tử đầu tiên của
python myscript.py0 sẽ là đường dẫn đầy đủ đến tệp mô-đun [trong khi tệp mô-đun đang được định vị, phần tử đầu tiên sẽ được đặt thành
python myscript.py02]. Như với tùy chọn
python myscript.py03, thư mục hiện tại sẽ được thêm vào đầu của
python myscript.py4
Tùy chọn
python myscript.py05 có thể được sử dụng để chạy tập lệnh ở chế độ biệt lập trong đó
python myscript.py4 không chứa thư mục hiện tại cũng như thư mục gói trang web của người dùng. Tất cả các biến môi trường của
python myscript.py07 cũng bị bỏ qua
Nhiều mô-đun thư viện tiêu chuẩn chứa mã được gọi khi thực thi dưới dạng tập lệnh. Một ví dụ là mô-đun
python myscript.py08
python myscript.py0
Tăng sự kiện kiểm tra
python myscript.py09 với đối số
python myscript.py10.
Xem thêm
python myscript.py11
Chức năng tương đương có sẵn trực tiếp cho mã Python
PEP 338 – Thực thi các mô-đun dưới dạng tập lệnh
Đã thay đổi trong phiên bản 3. 1. Cung cấp tên gói để chạy mô-đun con
python myscript.py8.
Đã thay đổi trong phiên bản 3. 4. các gói không gian tên cũng được hỗ trợ
-Đọc các lệnh từ đầu vào tiêu chuẩn [
python myscript.py13]. Nếu đầu vào tiêu chuẩn là một thiết bị đầu cuối, thì có nghĩa là
python myscript.py14
Nếu tùy chọn này được đưa ra, phần tử đầu tiên của
python myscript.py0 sẽ là
python myscript.py16 và thư mục hiện tại sẽ được thêm vào đầu của
python myscript.py4
Tăng sự kiện kiểm tra
python myscript.py18 không có đối số.
Thực thi mã Python có trong tập lệnh, mã này phải là đường dẫn hệ thống tệp [tuyệt đối hoặc tương đối] đề cập đến tệp Python, thư mục chứa tệp
python myscript.py19 hoặc tệp zip chứa tệp
python myscript.py19
Nếu tùy chọn này được đưa ra, phần tử đầu tiên của
python myscript.py0 sẽ là tên tập lệnh như được cung cấp trên dòng lệnh
Nếu tên tập lệnh đề cập trực tiếp đến tệp Python, thì thư mục chứa tệp đó sẽ được thêm vào đầu
python myscript.py4 và tệp được thực thi dưới dạng mô-đun
python myscript.py8
Nếu tên tập lệnh đề cập đến một thư mục hoặc tệp zip, thì tên tập lệnh sẽ được thêm vào đầu
python myscript.py4 và tệp
python myscript.py19 ở vị trí đó được thực thi dưới dạng mô-đun
python myscript.py8
Tùy chọn
python myscript.py05 có thể được sử dụng để chạy tập lệnh ở chế độ biệt lập trong đó
python myscript.py4 không chứa thư mục của tập lệnh cũng như thư mục gói trang web của người dùng. Tất cả các biến môi trường của
python myscript.py07 cũng bị bỏ qua
Tăng sự kiện kiểm tra
python myscript.py10 với đối số
python myscript.py11.
Xem thêm
python myscript.py12
Chức năng tương đương có sẵn trực tiếp cho mã Python
Nếu không có tùy chọn giao diện nào được cung cấp, thì có nghĩa là
python myscript.py14,
python myscript.py1 là một chuỗi rỗng [
python myscript.py15] và thư mục hiện tại sẽ được thêm vào đầu của
python myscript.py4. Ngoài ra, tính năng hoàn thành tab và chỉnh sửa lịch sử được bật tự động, nếu có trên nền tảng của bạn [xem Cấu hình dòng đọc ].
Xem thêm
Gọi thông dịch viên
Đã thay đổi trong phiên bản 3. 4. Tự động bật hoàn thành tab và chỉnh sửa lịch sử.
1. 1. 2. Tùy chọn chung¶
-? ¶ -h ¶ --trợ giúp¶In một mô tả ngắn về tất cả các tùy chọn dòng lệnh và các biến môi trường tương ứng rồi thoát
--help-env ¶In một mô tả ngắn về các biến môi trường dành riêng cho Python và thoát
Mới trong phiên bản 3. 11
--help-xoptions ¶In mô tả về các tùy chọn
python myscript.py17 dành riêng cho triển khai và thoát
Mới trong phiên bản 3. 11
--help-all ¶In đầy đủ thông tin sử dụng và thoát
Mới trong phiên bản 3. 11
-V ¶ --phiên bản ¶In số phiên bản Python và thoát. Đầu ra ví dụ có thể là
python myscript.py1
Khi được cung cấp hai lần, hãy in thêm thông tin về bản dựng, chẳng hạn như
python myscript.py0
Mới trong phiên bản 3. 6. Tùy chọn
python myscript.py18.
1. 1. 3. Tùy chọn khác¶
-b ¶Đưa ra cảnh báo khi so sánh
python myscript.py19 hoặc
python myscript.py30 với
python myscript.py31 hoặc
python myscript.py19 với
python myscript.py33. Đưa ra lỗi khi tùy chọn được đưa ra hai lần [______534]
Đã thay đổi trong phiên bản 3. 5. Ảnh hưởng đến việc so sánh
python myscript.py19 với
python myscript.py33. -B ¶
Nếu được cung cấp, Python sẽ không cố ghi các tệp
python myscript.py37 khi nhập các mô-đun nguồn. Xem thêm
python myscript.py38--check-hash-based-pycs mặc định. luôn luôn. không bao giờ ¶
Kiểm soát hành vi xác thực của tệp
python myscript.py37 dựa trên hàm băm. Xem Hủy hiệu lực mã byte được lưu trong bộ nhớ cache . Khi được đặt thành
python myscript.py30, các tệp bộ đệm mã byte dựa trên hàm băm đã chọn và không được chọn sẽ được xác thực theo ngữ nghĩa mặc định của chúng. Khi được đặt thành
python myscript.py31, tất cả các tệp
python myscript.py37 dựa trên hàm băm, dù được chọn hay không được chọn, đều được xác thực đối với tệp nguồn tương ứng của chúng. Khi được đặt thành
python myscript.py33, các tệp
python myscript.py37 dựa trên hàm băm không được xác thực đối với các tệp nguồn tương ứng của chúng.
Ngữ nghĩa của các tệp
python myscript.py37 dựa trên dấu thời gian không bị ảnh hưởng bởi tùy chọn này-d ¶
Bật đầu ra gỡ lỗi trình phân tích cú pháp [chỉ dành cho chuyên gia, tùy thuộc vào các tùy chọn biên dịch]. Xem thêm
python myscript.py36-E ¶
Bỏ qua tất cả các biến môi trường
python myscript.py07, e. g.
python myscript.py38 và
python myscript.py39, có thể được đặt
Xem thêm các tùy chọn
python myscript.py820 và
python myscript.py05 [tách biệt]
Khi tập lệnh được chuyển làm đối số đầu tiên hoặc tùy chọn
python myscript.py03 được sử dụng, hãy vào chế độ tương tác sau khi thực thi tập lệnh hoặc lệnh, ngay cả khi
python myscript.py13 không có vẻ là thiết bị đầu cuối. Tệp
python myscript.py824 không được đọc
Điều này có thể hữu ích để kiểm tra các biến toàn cục hoặc dấu vết ngăn xếp khi tập lệnh phát sinh ngoại lệ. Xem thêm
python myscript.py825-tôi ¶
Chạy Python ở chế độ biệt lập. Điều này cũng ngụ ý các tùy chọn
python myscript.py826,
python myscript.py820 và
python myscript.py828
Ở chế độ biệt lập,
python myscript.py4 không chứa thư mục của tập lệnh cũng như thư mục gói trang web của người dùng. Tất cả các biến môi trường của
python myscript.py07 cũng bị bỏ qua. Các hạn chế khác có thể được áp dụng để ngăn người dùng tiêm mã độc
Mới trong phiên bản 3. 4
-O ¶Xóa các câu khẳng định và bất kỳ mã nào có điều kiện dựa trên giá trị của
python myscript.py831. Tăng cường tên tệp cho các tệp đã biên dịch [ bytecode ] bằng cách thêm
python myscript.py832 trước phần mở rộng
python myscript.py37 [xem PEP 488]. Xem thêm
python myscript.py834.
Đã thay đổi trong phiên bản 3. 5. Sửa đổi tên tệp
python myscript.py37 theo PEP 488. -OO ¶
Làm
python myscript.py836 và cũng loại bỏ các chuỗi tài liệu. Tăng cường tên tệp cho các tệp đã biên dịch [ mã byte ] bằng cách thêm
python myscript.py837 trước phần mở rộng
python myscript.py37 [xem PEP 488].
Đã thay đổi trong phiên bản 3. 5. Sửa đổi tên tệp
python myscript.py37 theo PEP 488. -P ¶
Không thêm một đường dẫn có khả năng không an toàn tới
python myscript.py4
Dòng lệnh
python myscript.py
01. Đừng thêm thư mục làm việc hiện tạiDòng lệnh
python myscript.py
02. Đừng thêm thư mục của tập lệnh. Nếu đó là một liên kết tượng trưng, hãy giải quyết các liên kết tượng trưngDòng lệnh
python myscript.py
03 vàpython myscript.py
04 [REPL]. Đừng thêm vào một chuỗi trống, có nghĩa là thư mục làm việc hiện tại
Xem thêm biến môi trường
python myscript.py05 và các tùy chọn
python myscript.py826 và
python myscript.py05 [tách biệt]
Mới trong phiên bản 3. 11
-q ¶Không hiển thị thông báo bản quyền và phiên bản ngay cả trong chế độ tương tác
Mới trong phiên bản 3. 2
-R ¶Bật băm ngẫu nhiên. Tùy chọn này chỉ có tác dụng nếu biến môi trường
python myscript.py08 được đặt thành
python myscript.py09, vì ngẫu nhiên hàm băm được bật theo mặc định
Trên các phiên bản trước của Python, tùy chọn này bật ngẫu nhiên hàm băm, để các giá trị
python myscript.py10 của các đối tượng str và bytes được "muối" với một giá trị ngẫu nhiên không thể đoán trước. Mặc dù chúng không đổi trong một quy trình Python riêng lẻ, nhưng chúng không thể dự đoán được giữa các lần gọi Python lặp đi lặp lại
Ngẫu nhiên hóa hàm băm nhằm mục đích cung cấp khả năng bảo vệ chống lại tấn công từ chối dịch vụ gây ra bởi các đầu vào được lựa chọn cẩn thận nhằm khai thác hiệu suất trong trường hợp xấu nhất của cấu trúc chính tả, độ phức tạp O[n2]. xem http. //www. chứng chỉ. org/advisory/ocert-2011-003. html để biết chi tiết
python myscript.py08 cho phép bạn đặt giá trị cố định cho bí mật hạt băm
Đã thay đổi trong phiên bản 3. 7. Tùy chọn không còn bị bỏ qua.
Mới trong phiên bản 3. 2. 3
-s ¶Đừng thêm
python myscript.py12 vào
python myscript.py4
Xem thêm
PEP 370 – Thư mục gói trang web cho mỗi người dùng
-S ¶Vô hiệu hóa việc nhập mô-đun
python myscript.py14 và các thao tác phụ thuộc vào trang web của
python myscript.py4 mà nó đòi hỏi. Đồng thời vô hiệu hóa các thao tác này nếu sau đó
python myscript.py14 được nhập rõ ràng [gọi
python myscript.py17 nếu bạn muốn chúng được kích hoạt]-u ¶
Buộc các luồng thiết bị xuất chuẩn và thiết bị xuất chuẩn không bị chặn. Tùy chọn này không ảnh hưởng đến luồng stdin
Xem thêm
python myscript.py18
Đã thay đổi trong phiên bản 3. 7. Lớp văn bản của luồng thiết bị xuất chuẩn và thiết bị xuất chuẩn hiện không có bộ đệm.
-v ¶In thông báo mỗi khi mô-đun được khởi tạo, hiển thị vị trí [tên tệp hoặc mô-đun tích hợp] mà từ đó mô-đun được tải. Khi được cung cấp hai lần [
python myscript.py19], hãy in thông báo cho từng tệp được chọn khi tìm kiếm mô-đun. Cũng cung cấp thông tin về dọn dẹp mô-đun khi thoát
Đã thay đổi trong phiên bản 3. 10. Mô-đun
python myscript.py14 báo cáo các đường dẫn dành riêng cho trang web và các tệp
python myscript.py21 đang được xử lý.
Xem thêm
python myscript.py22-W arg ¶
kiểm soát cảnh báo. Bộ máy cảnh báo của Python theo mặc định in các thông báo cảnh báo tới
python myscript.py23
Các cài đặt đơn giản nhất áp dụng vô điều kiện một hành động cụ thể cho tất cả các cảnh báo do một quy trình đưa ra [ngay cả những cảnh báo bị bỏ qua theo mặc định]
python myscript.py1
Tên hành động có thể được viết tắt theo ý muốn và trình thông dịch sẽ phân giải chúng thành tên hành động thích hợp. Ví dụ:
python myscript.py24 giống như
python myscript.py25
Hình thức đầy đủ của lập luận là
python myscript.py3
Các trường trống phù hợp với tất cả các giá trị; . Ví dụ:
python myscript.py26 bỏ qua tất cả các cảnh báo DeprecationWarning
Trường hành động như đã giải thích ở trên nhưng chỉ áp dụng cho các cảnh báo khớp với các trường còn lại
Trường thông báo phải khớp với toàn bộ thông báo cảnh báo;
Trường danh mục khớp với danh mục cảnh báo [ví dụ:.
python myscript.py27]. Đây phải là một tên lớp;
Trường mô-đun khớp với tên mô-đun [đủ điều kiện];
Trường lineno khớp với số dòng, trong đó số 0 khớp với tất cả các số dòng và do đó tương đương với số dòng bị bỏ qua
Có thể đưa ra nhiều tùy chọn
python myscript.py28; . Các tùy chọn
python myscript.py28 không hợp lệ bị bỏ qua [tuy nhiên, một thông báo cảnh báo được in về các tùy chọn không hợp lệ khi cảnh báo đầu tiên được đưa ra]
Các cảnh báo cũng có thể được kiểm soát bằng cách sử dụng biến môi trường
python myscript.py30 và từ bên trong chương trình Python bằng mô-đun
python myscript.py31. Ví dụ: hàm
python myscript.py32 có thể được sử dụng để sử dụng biểu thức chính quy trên thông báo cảnh báo
Xem Bộ lọc Cảnh báo và Mô tả Bộ lọc Cảnh báo để biết .
-x ¶Bỏ qua dòng đầu tiên của nguồn, cho phép sử dụng các dạng không phải Unix của
python myscript.py33. Điều này chỉ dành cho một vụ hack cụ thể của DOS-X ¶
Dành riêng cho các tùy chọn triển khai cụ thể khác nhau. CPython hiện xác định các giá trị có thể sau
python myscript.py
34 để kích hoạtpython myscript.py
35;python myscript.py
36 để xuất tổng số tham chiếu và số khối bộ nhớ đã sử dụng khi chương trình kết thúc hoặc sau mỗi câu lệnh trong trình thông dịch tương tác. Điều này chỉ hoạt động trên bản dựng gỡ lỗi .python myscript.py
37 để bắt đầu theo dõi phân bổ bộ nhớ Python bằng mô-đunpython myscript.py
38. Theo mặc định, chỉ khung hình gần đây nhất được lưu trữ trong truy nguyên của dấu vết. Sử dụngpython myscript.py
39 để bắt đầu theo dõi với giới hạn truy nguyên của các khung NFRAME. Xempython myscript.py
40 để biết thêm thông tinpython myscript.py
41 định cấu hình giới hạn độ dài chuyển đổi chuỗi số nguyên . Xem thêmpython myscript.py
42.python myscript.py
43 để hiển thị mỗi lần nhập mất bao lâu. Nó hiển thị tên mô-đun, thời gian tích lũy [bao gồm nhập lồng nhau] và thời gian tự [không bao gồm nhập lồng nhau]. Lưu ý rằng đầu ra của nó có thể bị hỏng trong ứng dụng đa luồng. Cách sử dụng thông thường làpython myscript.py
44. Xem thêmpython myscript.py
45____046. bật Chế độ phát triển Python , giới thiệu các kiểm tra thời gian chạy bổ sung quá tốn kém để được bật theo mặc định.
python myscript.py
47 bật Chế độ Python UTF-8 .python myscript.py
48 vô hiệu hóa rõ ràng Chế độ Python UTF-8 [ngay cả khi nó sẽ tự động kích hoạt].python myscript.py
49 cho phép ghi các tệppython myscript.py
37 vào một cây song song bắt nguồn từ thư mục đã cho thay vì vào cây mã. Xem thêmpython myscript.py
51python myscript.py
52 phát hành mộtpython myscript.py
53 khi mã hóa mặc định dành riêng cho ngôn ngữ được sử dụng để mở tệp. Xem thêmpython myscript.py
54python myscript.py
55 vô hiệu hóa việc bao gồm các bảng ánh xạ thông tin vị trí bổ sung [dòng kết thúc, phần bù cột bắt đầu và phần bù cột kết thúc] cho mọi lệnh trong các đối tượng mã. Điều này rất hữu ích khi muốn có các đối tượng mã nhỏ hơn và tệp pyc cũng như loại bỏ các chỉ báo vị trí trực quan bổ sung khi trình thông dịch hiển thị truy vết. Xem thêmpython myscript.py
56python myscript.py
57 xác định xem các mô-đun bị đóng băng có bị máy móc nhập khẩu bỏ qua hay không. Giá trị "bật" có nghĩa là chúng được nhập và "tắt" có nghĩa là chúng bị bỏ qua. Giá trị mặc định là “bật” nếu đây là Python đã cài đặt [trường hợp bình thường]. Nếu nó đang được phát triển [chạy từ cây nguồn] thì mặc định là “tắt”. Lưu ý rằng các mô-đun bị đóng băng “importlib_bootstrap” và “importlib_bootstrap_external” luôn được sử dụng, ngay cả khi cờ này được đặt thành “tắt”
Nó cũng cho phép truyền các giá trị tùy ý và truy xuất chúng thông qua từ điển
python myscript.py58
Đã thay đổi trong phiên bản 3. 2. Tùy chọn
python myscript.py17 đã được thêm vào.
Mới trong phiên bản 3. 3. Tùy chọn
python myscript.py34.
Mới trong phiên bản 3. 4. Các tùy chọn
python myscript.py36 và
python myscript.py37.
Mới trong phiên bản 3. 6. Tùy chọn
python myscript.py63.
Mới trong phiên bản 3. 7. Các tùy chọn
python myscript.py43,
python myscript.py46 và
python myscript.py47.
Mới trong phiên bản 3. 8. Tùy chọn
python myscript.py67. Tùy chọn
python myscript.py46 hiện ghi nhật ký ngoại lệ
python myscript.py69 trong hàm hủy
python myscript.py70.
Đã thay đổi trong phiên bản 3. 9. Sử dụng tùy chọn
python myscript.py46, kiểm tra các đối số mã hóa và lỗi trên các hoạt động mã hóa và giải mã chuỗi.
Tùy chọn
python myscript.py63 đã bị xóa
Mới trong phiên bản 3. 10. Tùy chọn
python myscript.py52.
Không dùng nữa kể từ phiên bản 3. 9, đã bị xóa trong phiên bản 3. 10. Tùy chọn
python myscript.py74.
Mới trong phiên bản 3. 11. Tùy chọn
python myscript.py55.
Mới trong phiên bản 3. 11. Tùy chọn
python myscript.py57.
Mới trong phiên bản 3. 11. Tùy chọn
python myscript.py41.
1. 1. 4. Các tùy chọn bạn không nên sử dụng¶
-J ¶Dành riêng cho Jython sử dụng
1. 2. Biến môi trường¶
Các biến môi trường này ảnh hưởng đến hành vi của Python, chúng được xử lý trước khi chuyển đổi dòng lệnh khác với -E hoặc -I. Theo thông lệ, các công tắc dòng lệnh sẽ ghi đè các biến môi trường khi có xung đột
PYTHONHOME ¶Thay đổi vị trí của các thư viện Python tiêu chuẩn. Theo mặc định, các thư viện được tìm kiếm trong
python myscript.py78 và
python myscript.py79, trong đó
python myscript.py80 và
python myscript.py81 là các thư mục phụ thuộc vào cài đặt, cả hai đều được đặt mặc định là
python myscript.py82
Khi
python myscript.py39 được đặt thành một thư mục, giá trị của nó sẽ thay thế cả
python myscript.py80 và
python myscript.py81. Để chỉ định các giá trị khác nhau cho những giá trị này, hãy đặt
python myscript.py39 thành
python myscript.py87PYTHONPATH ¶
Tăng cường đường dẫn tìm kiếm mặc định cho các tệp mô-đun. Định dạng giống như của shell
python myscript.py88. một hoặc nhiều tên đường dẫn thư mục được phân tách bằng
python myscript.py89 [e. g. dấu hai chấm trên Unix hoặc dấu chấm phẩy trên Windows]. Các thư mục không tồn tại được âm thầm bỏ qua
Ngoài các thư mục thông thường, các mục nhập
python myscript.py38 riêng lẻ có thể đề cập đến các tệp zip chứa các mô-đun Python thuần túy [ở dạng nguồn hoặc dạng biên dịch]. Không thể nhập mô-đun mở rộng từ tệp zip
Đường dẫn tìm kiếm mặc định phụ thuộc vào cài đặt, nhưng thường bắt đầu bằng
python myscript.py78 [xem
python myscript.py39 ở trên]. Nó luôn được thêm vào
python myscript.py38
Một thư mục bổ sung sẽ được chèn vào đường dẫn tìm kiếm phía trước
python myscript.py38 như được mô tả ở trên trong Tùy chọn giao diện . Đường dẫn tìm kiếm có thể được thao tác từ bên trong chương trình Python dưới dạng biến
python myscript.py4. PYTHONSAFEPATH ¶
Nếu điều này được đặt thành một chuỗi không trống, thì đừng thêm đường dẫn có khả năng không an toàn vào
python myscript.py4. xem tùy chọn
python myscript.py820 để biết chi tiết
Mới trong phiên bản 3. 11
PYTHONPLATLIBDIR ¶Nếu điều này được đặt thành một chuỗi không trống, nó sẽ ghi đè giá trị
python myscript.py98
Mới trong phiên bản 3. 9
PYTHONSTARTUP ¶Nếu đây là tên của một tệp có thể đọc được, các lệnh Python trong tệp đó sẽ được thực thi trước khi lời nhắc đầu tiên được hiển thị trong chế độ tương tác. Tệp được thực thi trong cùng một không gian tên nơi các lệnh tương tác được thực thi sao cho các đối tượng được xác định hoặc nhập trong đó có thể được sử dụng mà không cần trình độ trong phiên tương tác. Bạn cũng có thể thay đổi lời nhắc
python myscript.py99 và
python myscript.py000 và dấu móc
python myscript.py001 trong tệp này
Tăng sự kiện kiểm tra
python myscript.py002 với tên tệp làm đối số khi được gọi khi khởi động. PYTHONOPTIMIZE ¶
Nếu điều này được đặt thành một chuỗi không trống, nó tương đương với việc chỉ định tùy chọn
python myscript.py836. Nếu được đặt thành số nguyên, nó tương đương với việc chỉ định
python myscript.py836 nhiều lầnPYTHONBREAKPOINT ¶
Nếu điều này được đặt, nó sẽ đặt tên cho một cuộc gọi có thể sử dụng ký hiệu đường chấm chấm. Mô-đun chứa khả năng gọi được sẽ được nhập và sau đó khả năng gọi được sẽ được chạy theo cách triển khai mặc định của
python myscript.py005, bản thân nó được gọi bởi
python myscript.py006 tích hợp. Nếu không được đặt hoặc đặt thành chuỗi trống, nó tương đương với giá trị “pdb. set_trace”. Đặt điều này thành chuỗi “0” khiến việc triển khai mặc định của
python myscript.py005 không làm được gì ngoài việc trả về ngay lập tức
Mới trong phiên bản 3. 7
PYTHONDEBUG ¶Nếu điều này được đặt thành một chuỗi không trống, nó tương đương với việc chỉ định tùy chọn
python myscript.py008. Nếu được đặt thành số nguyên, nó tương đương với việc chỉ định
python myscript.py008 nhiều lầnPYTHONINSPECT ¶
Nếu điều này được đặt thành một chuỗi không trống, nó tương đương với việc chỉ định tùy chọn
python myscript.py14
Biến này cũng có thể được sửa đổi bằng mã Python bằng cách sử dụng
python myscript.py011 để buộc chế độ kiểm tra khi kết thúc chương trìnhPYTHON KHÔNG ĐƯỢC PHÉP ¶
Nếu điều này được đặt thành một chuỗi không trống, nó tương đương với việc chỉ định tùy chọn
python myscript.py012PYTHONVERBOSE ¶
Nếu điều này được đặt thành một chuỗi không trống, nó tương đương với việc chỉ định tùy chọn
python myscript.py013. Nếu được đặt thành số nguyên, nó tương đương với việc chỉ định
python myscript.py013 nhiều lầnPYTHONCASEOK ¶
Nếu điều này được đặt, Python sẽ bỏ qua trường hợp trong câu lệnh
python myscript.py015. Điều này chỉ hoạt động trên Windows và macOSPYTHONDONTWRITEBYTECODE ¶
Nếu điều này được đặt thành một chuỗi không trống, Python sẽ không cố ghi các tệp
python myscript.py37 khi nhập các mô-đun nguồn. Điều này tương đương với việc chỉ định tùy chọn
python myscript.py017PYTHONPYCACHEPREFIX ¶
Nếu điều này được đặt, Python sẽ ghi các tệp
python myscript.py37 trong cây thư mục nhân bản tại đường dẫn này, thay vì trong các thư mục
python myscript.py019 trong cây nguồn. Điều này tương đương với việc chỉ định tùy chọn
python myscript.py17
python myscript.py021
Mới trong phiên bản 3. 8
PYTHONHASHSEED ¶Nếu biến này không được đặt hoặc được đặt thành
python myscript.py022, thì một giá trị ngẫu nhiên sẽ được sử dụng để khởi tạo giá trị băm của các đối tượng str và byte
Nếu
python myscript.py08 được đặt thành một giá trị số nguyên, thì nó được sử dụng làm hạt giống cố định để tạo hàm băm [] của các loại được bao phủ bởi ngẫu nhiên hàm băm
Mục đích của nó là cho phép băm lặp lại, chẳng hạn như để tự kiểm tra cho chính trình thông dịch hoặc cho phép một cụm quy trình python chia sẻ giá trị băm
Số nguyên phải là số thập phân trong phạm vi [0,4294967295]. Chỉ định giá trị 0 sẽ vô hiệu hóa băm ngẫu nhiên
Mới trong phiên bản 3. 2. 3
PYTHONINTMAXSTRDIGITS ¶Nếu biến này được đặt thành số nguyên, nó được sử dụng để định cấu hình giới hạn độ dài chuyển đổi chuỗi số nguyên toàn cầu của trình thông dịch .
Mới trong phiên bản 3. 11
PYTHONIOENCODING ¶Nếu điều này được đặt trước khi chạy trình thông dịch, nó sẽ ghi đè mã hóa được sử dụng cho stdin/stdout/stderr, theo cú pháp
python myscript.py024. Cả hai phần
python myscript.py025 và
python myscript.py026 đều là tùy chọn và có cùng ý nghĩa như trong
python myscript.py027
Đối với stderr, phần
python myscript.py026 bị bỏ qua;
Đã thay đổi trong phiên bản 3. 4. Phần
python myscript.py025 hiện là tùy chọn.
Đã thay đổi trong phiên bản 3. 6. Trên Windows, mã hóa được chỉ định bởi biến này bị bỏ qua đối với bộ đệm bảng điều khiển tương tác trừ khi
python myscript.py031 cũng được chỉ định. Các tệp và đường dẫn được chuyển hướng qua các luồng tiêu chuẩn không bị ảnh hưởng. PYTHONNOUSERSITE ¶
Nếu điều này được đặt, Python sẽ không thêm
python myscript.py12 vào
python myscript.py4
Xem thêm
PEP 370 – Thư mục gói trang web cho mỗi người dùng
PYTHONUSERBASE ¶Xác định
python myscript.py034, được sử dụng để tính toán đường dẫn của
python myscript.py12 và Đường dẫn cài đặt Distutils cho
python myscript.py036.
Xem thêm
PEP 370 – Thư mục gói trang web cho mỗi người dùng
Nếu biến môi trường này được đặt, thì
python myscript.py1 sẽ được đặt thành giá trị của nó thay vì giá trị nhận được trong thời gian chạy C. Chỉ hoạt động trên macOSCẢNH BÁO PYTHON ¶
Điều này tương đương với tùy chọn
python myscript.py28. Nếu được đặt thành một chuỗi được phân tách bằng dấu phẩy, nó tương đương với việc chỉ định
python myscript.py28 nhiều lần, với các bộ lọc sau trong danh sách sẽ được ưu tiên hơn các bộ lọc trước đó trong danh sách
Các cài đặt đơn giản nhất áp dụng vô điều kiện một hành động cụ thể cho tất cả các cảnh báo do một quy trình đưa ra [ngay cả những cảnh báo bị bỏ qua theo mặc định]
python myscript.py3
Xem Bộ lọc Cảnh báo và Mô tả Bộ lọc Cảnh báo để biết .
PYTHONFAULTHANDER ¶Nếu biến môi trường này được đặt thành một chuỗi không trống, thì
python myscript.py040 được gọi khi khởi động. cài đặt trình xử lý cho các tín hiệu
python myscript.py041,
python myscript.py042,
python myscript.py043,
python myscript.py044 và
python myscript.py045 để kết xuất truy nguyên Python. Điều này tương đương với tùy chọn
python myscript.py17
python myscript.py35
Mới trong phiên bản 3. 3
PYTHONTRACEMALLOC ¶Nếu biến môi trường này được đặt thành một chuỗi không trống, hãy bắt đầu theo dõi phân bổ bộ nhớ Python bằng mô-đun
python myscript.py38. Giá trị của biến là số lượng khung hình tối đa được lưu trữ trong truy nguyên của một dấu vết. Ví dụ:
python myscript.py049 chỉ lưu trữ khung gần đây nhất. Xem
python myscript.py40 để biết thêm thông tin
Mới trong phiên bản 3. 4
PYTHONPROFILEIMPORTTIME ¶Nếu biến môi trường này được đặt thành một chuỗi không trống, Python sẽ hiển thị thời gian mỗi lần nhập. Điều này hoàn toàn tương đương với việc đặt
python myscript.py43 trên dòng lệnh
Mới trong phiên bản 3. 7
PYTHONASYNCIODEBUG ¶Nếu biến môi trường này được đặt thành chuỗi không trống, hãy bật chế độ gỡ lỗi của mô-đun
python myscript.py052.
Mới trong phiên bản 3. 4
PYTHONMALLOC ¶Đặt bộ cấp phát bộ nhớ Python và/hoặc cài đặt móc gỡ lỗi
Đặt họ bộ cấp phát bộ nhớ được sử dụng bởi Python
____630. sử dụng bộ cấp phát bộ nhớ mặc định .
python myscript.py
054. sử dụng chức năngpython myscript.py
055 của thư viện C cho tất cả các miền [python myscript.py
056,python myscript.py
057,python myscript.py
058]____1059. sử dụng bộ cấp phát pymalloc cho miền
python myscript.py
057 vàpython myscript.py
058 và sử dụng hàmpython myscript.py
055 cho miềnpython myscript.py
056.
Cài đặt móc gỡ lỗi .
____1064. cài đặt móc gỡ lỗi trên bộ cấp phát bộ nhớ mặc định .
python myscript.py
065. giống nhưpython myscript.py
054 nhưng cũng cài đặt móc gỡ lỗipython myscript.py
067. giống nhưpython myscript.py
059 nhưng cũng cài đặt móc gỡ lỗi
Đã thay đổi trong phiên bản 3. 7. Đã thêm trình phân bổ
python myscript.py069.
Mới trong phiên bản 3. 6
PYTHONMALLOCSTATS ¶Nếu được đặt thành một chuỗi không trống, Python sẽ in số liệu thống kê của bộ cấp phát bộ nhớ pymalloc mỗi khi một đấu trường đối tượng pymalloc mới được tạo .
Biến này bị bỏ qua nếu biến môi trường
python myscript.py070 được sử dụng để buộc bộ cấp phát
python myscript.py055 của thư viện C hoặc nếu Python được định cấu hình mà không có hỗ trợ
python myscript.py059
Đã thay đổi trong phiên bản 3. 6. Biến này hiện cũng có thể được sử dụng trên Python được biên dịch ở chế độ phát hành. Bây giờ nó không có tác dụng nếu được đặt thành một chuỗi trống.
PYTHONLEGACYWINDOWSFSENCODING ¶Nếu được đặt thành chuỗi không trống, chế độ mã hóa hệ thống tệp và trình xử lý lỗi mặc định sẽ trở lại chế độ trước 3. 6 giá trị của ‘mbcs’ và ‘replace’ tương ứng. Mặt khác, các giá trị mặc định mới 'utf-8' và 'surrogatepass' được sử dụng.
Điều này cũng có thể được kích hoạt trong thời gian chạy với
python myscript.py073
Tính khả dụng . các cửa sổ.
Mới trong phiên bản 3. 6. Xem PEP 529 để biết thêm chi tiết.
PYTHONLEGACYWINDOWSTDIO ¶Nếu được đặt thành một chuỗi không trống, không sử dụng trình đọc và ghi bảng điều khiển mới. Điều này có nghĩa là các ký tự Unicode sẽ được mã hóa theo trang mã bảng điều khiển đang hoạt động, thay vì sử dụng utf-8
Biến này bị bỏ qua nếu luồng tiêu chuẩn được chuyển hướng [đến tệp hoặc đường dẫn] thay vì đề cập đến bộ đệm bảng điều khiển
Tính khả dụng . các cửa sổ.
Mới trong phiên bản 3. 6
PYTHONCOERCECLOCALE ¶Nếu được đặt thành giá trị
python myscript.py09, khiến ứng dụng dòng lệnh Python chính bỏ qua việc ép buộc các ngôn ngữ C và POSIX dựa trên ASCII kế thừa thành một giải pháp thay thế dựa trên UTF-8 có khả năng hơn
Nếu biến này không được đặt [hoặc được đặt thành một giá trị khác với
python myscript.py09], thì biến môi trường ghi đè ngôn ngữ
python myscript.py076 cũng không được đặt và ngôn ngữ hiện tại được báo cáo cho danh mục
python myscript.py077 hoặc là ngôn ngữ
python myscript.py078 mặc định, hoặc là ngôn ngữ ASCII rõ ràng
python myscript.py
081python myscript.py
082python myscript.py
083
Nếu đặt thành công một trong các danh mục ngôn ngữ này, thì biến môi trường
python myscript.py077 cũng sẽ được đặt tương ứng trong môi trường quy trình hiện tại trước khi thời gian chạy Python được khởi tạo. Điều này đảm bảo rằng ngoài việc được nhìn thấy bởi cả chính trình thông dịch và các thành phần nhận biết ngôn ngữ khác đang chạy trong cùng một quy trình [chẳng hạn như thư viện GNU
python myscript.py085], cài đặt đã cập nhật cũng được nhìn thấy trong các quy trình con [bất kể các quy trình đó có hay không
Việc định cấu hình một trong các ngôn ngữ này [hoặc rõ ràng hoặc thông qua ép buộc ngôn ngữ ẩn ở trên] sẽ tự động kích hoạt trình xử lý lỗi
python myscript.py087 error handler cho
python myscript.py13 và
python myscript.py089 [ . Hành vi xử lý luồng này có thể được ghi đè bằng cách sử dụng
python myscript.py092 như bình thường.
Đối với mục đích gỡ lỗi, cài đặt
python myscript.py093 sẽ khiến Python phát ra thông báo cảnh báo trên
python myscript.py094 nếu chế độ cưỡng chế ngôn ngữ kích hoạt hoặc nếu ngôn ngữ khác có thể kích hoạt chế độ cưỡng chế vẫn hoạt động khi thời gian chạy Python được khởi tạo
Cũng lưu ý rằng ngay cả khi tính năng ép buộc ngôn ngữ bị vô hiệu hóa hoặc khi không tìm thấy ngôn ngữ mục tiêu phù hợp,
python myscript.py095 vẫn sẽ kích hoạt theo mặc định trong các ngôn ngữ dựa trên ASCII kế thừa. Phải tắt cả hai tính năng để buộc trình thông dịch sử dụng
python myscript.py096 thay vì
python myscript.py083 cho giao diện hệ thống
Tính khả dụng . Unix.
Mới trong phiên bản 3. 7. Xem PEP 538 để biết thêm chi tiết.
PYTHONDEVMODE ¶Nếu biến môi trường này được đặt thành một chuỗi không trống, hãy bật Chế độ phát triển Python , giới thiệu các kiểm tra thời gian chạy bổ sung quá tốn kém để .
Mới trong phiên bản 3. 7
PYTHONUTF8 ¶Nếu được đặt thành
python myscript.py098, hãy bật Chế độ Python UTF-8 .
Nếu được đặt thành
python myscript.py09, hãy tắt Chế độ Python UTF-8 .
Đặt bất kỳ chuỗi không trống nào khác sẽ gây ra lỗi trong quá trình khởi tạo trình thông dịch
Mới trong phiên bản 3. 7
PYTHONWARNDEFAULTENCODING ¶Nếu biến môi trường này được đặt thành chuỗi không trống, hãy đưa ra lỗi
python myscript.py53 khi mã hóa mặc định dành riêng cho ngôn ngữ được sử dụng
Xem Cảnh báo mã hóa chọn tham gia để biết chi tiết.
Mới trong phiên bản 3. 10
PYTHONNODEBUGRANGES ¶Nếu biến này được đặt, nó sẽ vô hiệu hóa việc bao gồm các bảng ánh xạ thông tin vị trí bổ sung [dòng kết thúc, phần bù cột bắt đầu và phần bù cột kết thúc] cho mọi lệnh trong các đối tượng mã. Điều này rất hữu ích khi muốn có các đối tượng mã nhỏ hơn và tệp pyc cũng như loại bỏ các chỉ báo vị trí trực quan bổ sung khi trình thông dịch hiển thị truy vết
Mới trong phiên bản 3. 11
1. 2. 1. Biến chế độ gỡ lỗi¶
PYTHONTHREADDEBUG ¶Nếu được đặt, Python sẽ in thông tin gỡ lỗi luồng vào thiết bị xuất chuẩn
Cần có bản dựng gỡ lỗi của Python .
Không dùng nữa kể từ phiên bản 3. 10, sẽ bị xóa trong phiên bản 3. 12
PYTHONDUMPREFS ¶Nếu được đặt, Python sẽ kết xuất các đối tượng và số lượng tham chiếu vẫn còn tồn tại sau khi tắt trình thông dịch vào một tệp có tên FILENAME