Sự phản xạ¶
-
PyObject *PyEval_GetBuiltins(void)¶
- Giá trị trả về: Tham chiếu mượn. Một phần của ABI ổn định.
Sắp loại bỏ từ phiên bản 3.13: Thay vào đó hãy sử dụng
PyEval_GetFrameBuiltins().Trả về một từ điển chứa các nội dung trong khung thực thi hiện tại hoặc trình thông dịch của trạng thái luồng nếu hiện không có khung nào đang thực thi.
-
PyObject *PyEval_GetLocals(void)¶
- Giá trị trả về: Tham chiếu mượn. Một phần của ABI ổn định.
Sắp loại bỏ từ phiên bản 3.13: Sử dụng
PyEval_GetFrameLocals()để có hành vi tương tự như gọilocals()trong mã Python hoặc gọiPyFrame_GetLocals()theo kết quả củaPyEval_GetFrame()để truy cập thuộc tínhf_localscủa khung hiện đang thực thi.Trả về ánh xạ cung cấp quyền truy cập vào các biến cục bộ trong khung thực thi hiện tại hoặc
NULLnếu hiện không có khung nào đang thực thi.Tham khảo
locals()để biết chi tiết về ánh xạ được trả về ở các phạm vi khác nhau.Vì hàm này trả về borrowed reference nên từ điển được trả về cho optimized scopes sẽ được lưu vào bộ nhớ đệm trên đối tượng khung và sẽ vẫn tồn tại miễn là đối tượng khung vẫn tồn tại. Không giống như
PyEval_GetFrameLocals()vàlocals(), các lệnh gọi tiếp theo tới hàm này trong cùng một khung sẽ cập nhật nội dung của từ điển được lưu trong bộ nhớ đệm để phản ánh những thay đổi về trạng thái của các biến cục bộ thay vì trả về một ảnh chụp nhanh mới.Thay đổi trong phiên bản 3.13: Là một phần của PEP 667,
PyFrame_GetLocals(),locals()vàFrameType.f_localskhông còn sử dụng từ điển bộ nhớ đệm dùng chung nữa. Tham khảo What's New entry để biết thêm chi tiết.
-
PyObject *PyEval_GetGlobals(void)¶
- Giá trị trả về: Tham chiếu mượn. Một phần của ABI ổn định.
Sắp loại bỏ từ phiên bản 3.13: Thay vào đó hãy sử dụng
PyEval_GetFrameGlobals().Trả về từ điển của các biến toàn cục trong khung thực thi hiện tại hoặc
NULLnếu hiện không có khung nào đang thực thi.
-
PyFrameObject *PyEval_GetFrame(void)¶
- Giá trị trả về: Tham chiếu mượn. Một phần của ABI ổn định.
Trả về khung của attached thread state, là
NULLnếu hiện tại không có khung nào đang thực thi.Xem thêm
PyThreadState_GetFrame().
-
PyObject *PyEval_GetFrameBuiltins(void)¶
- Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định kể từ phiên bản 3.13.
Trả về một từ điển chứa các nội dung trong khung thực thi hiện tại hoặc trình thông dịch của trạng thái luồng nếu hiện không có khung nào đang thực thi.
Added in version 3.13.
-
PyObject *PyEval_GetFrameLocals(void)¶
- Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định kể từ phiên bản 3.13.
Trả về từ điển của các biến cục bộ trong khung thực thi hiện tại hoặc
NULLnếu hiện không có khung nào đang thực thi. Tương đương với việc gọilocals()trong mã Python.Để truy cập
f_localstrên khung hiện tại mà không tạo ảnh chụp nhanh độc lập trong optimized scopes, hãy gọiPyFrame_GetLocals()theo kết quả củaPyEval_GetFrame().Added in version 3.13.
-
PyObject *PyEval_GetFrameGlobals(void)¶
- Giá trị trả về: Tham chiếu mới. Một phần của ABI ổn định kể từ phiên bản 3.13.
Trả về từ điển của các biến toàn cục trong khung thực thi hiện tại hoặc
NULLnếu hiện không có khung nào đang thực thi. Tương đương với việc gọiglobals()trong mã Python.Added in version 3.13.
-
const char *PyEval_GetFuncName(PyObject *func)¶
- Một phần của ABI ổn định.
Trả về tên của func nếu nó là một hàm, lớp hoặc đối tượng thể hiện, nếu không thì tên của loại funcs.
-
const char *PyEval_GetFuncDesc(PyObject *func)¶
- Một phần của ABI ổn định.
Trả về chuỗi mô tả, tùy thuộc vào loại func. Các giá trị trả về bao gồm "()" cho các hàm và phương thức, " constructor", " instance" và " object". Kết hợp với kết quả của
PyEval_GetFuncName(), kết quả sẽ là mô tả về func.