W pycharm można wybrać funkcję i naciśnij Alt + SHIFT + F7 aby uruchomić wyszukiwanie użytkowania. Jest również dostępny w "Edycja → Znajdź → Znajdź obciążenia". Wygląda na to, że jest bardziej inteligentny niż wyszukiwanie tekstowe.
Posługiwanie się analizą statyczną w celu znalezienia miejsca wywołania funkcji jest w ogóle trudne w Pythonie, ponieważ wykorzystuje dynamiczne wiązanie i ma wiele introspekcji, więc bardzo łatwo uzyskać fałszywe alarmy. W przypadku funkcji na poziomie modułu, myślę, że dobrym rozwiązaniem jest zawsze używać module.function
do wywoływania funkcji i nigdy nie wykonywać from module import function
. W ten sposób możesz wyszukać tekst "module.function". Przewodniki w stylu Pythona zazwyczaj zalecają importowanie funkcji itp. W ten sposób, więc uważam, że jest to ogólnie przyjęta dobra praktyka.
Wyszukiwanie metod jest oczywiście znacznie trudniejsze. Jedną z rzeczy, które lubię w rozwijaniu w Javie i C#, jest możliwość znalezienia wszystkich zastosowań metody za pomocą analizy statycznej.
To wygląda dokładnie na funkcję, której szukałem, dziękuję. Często używam 'import as' do łatwiejszego zarządzania przestrzeniami nazw, ale wadą jest to, że wyszukiwanie staje się jeszcze trudniejsze. –
W kolejnych wersjach PyCharm powiązanie "Find Usages" zmieniło się na ''. Z jakiegoś powodu, ale głównie dlatego, że. W przeciwnym razie ten element menu znajduje się teraz w "Edit → Find → Find Usages". Dlaczego operacje "znajdź" tylko do odczytu znajdowałyby się pod najwyższymi poziomami menu "Edycja", a nie "Widok" lub "Nawiguj" to najgorsze przypuszczenia. (_ Mam nutry ._) –