Tôi có một mô-đun trang trí một số chức năng chính với trang trí tùy chỉnh.Có cách nào để bước vào các chức năng trang trí, bỏ qua mã trang trí
Gỡ lỗi các chức năng này với pdb thường là một chút đau đớn, bởi vì mỗi khi tôi bước vào một chức năng trang trí, trước tiên tôi phải bước qua mã trang trí. Tôi có thể tất nhiên chỉ cần thiết lập trình gỡ lỗi để phá vỡ trong hàm tôi quan tâm, nhưng như các chức năng chính chúng được gọi nhiều lần từ nhiều nơi vì vậy tôi thường thích bắt đầu gỡ lỗi bên ngoài chức năng này. Các tính năng chính của chúng tôi là:.
tôi đã cố gắng để minh họa nó bằng mã, nhưng tôi không biết nếu điều đó giúp:
def i_dont_care_about_this(fn):
@functiontools.wraps(fn)
def wrapper(*args, **kwargs):
return fn(*args, **kwargs)
return wrapper
@i_dont_care_about_this
def i_only_care_about_this():
# no use to set pdb here
def i_am_here():
import pdb; pdb.set_trace()
i_only_care_about_this()
Vì vậy, có cách nào cho tôi để bước vào i_only_care_about_this
từ i_am_here
mà không đi qua i_dont_care_about_this
?
Về cơ bản tôi muốn bỏ qua tất cả các mã trang trí khi sử dụng s Sang (s) tep vào một chức năng trang trí nhất định.
Làm thế nào để PDB biết rằng một hàm được trang trí và tại mà điểm chức năng ban đầu là entere d? Bạn sẽ phải thích ứng với cả hai trang trí của bạn và PDB để làm một cái gì đó như thế này có thể. –
Tôi nghĩ rằng có thể có một cách như là kiến thức của tôi về cách xử lý Python trang trí nội bộ là hơi hạn chế. –