Могу ли я увидеть строку кода, использованную для определения этой переменной, с учетом переменной? - PullRequest
0 голосов
/ 27 февраля 2020

У меня есть общее любопытство, порожденное конкретной заданной мне c задачей по кодированию, и я думаю, что лучший способ задать свой вопрос - кратко объяснить мою задачу. Я создаю инструментарий, в котором пользователи определяют набор уравнений в python, а затем мой код выдаст некоторые интересные результаты. Часть моего инструментария потребует, чтобы их уравнения были записаны в определенном порядке c. Вот как может выглядеть вход в мои инструменты:

def psi(x):

    v, r = x.ravel()

    EQ1 = v-r
    EQ2 = r+1

    return np.array([[EQ1], [EQ2]])

Мой код будет тогда брать эту функцию psi, брать производные и делать некоторую математику. Мне нужно убедиться, что EQ1 и EQ2 определены в правильном порядке в общем случае. Я знаю несколько способов обеспечить это, но мой процесс выяснения этого привел меня к моему вопросу:

Могу ли я написать что-то, что будет искать строку, где определен EQ1, и написать эта строка в строку?

Я знаю, что если пользователь определяет свою функцию psi в отдельном файле, я, безусловно, могу проанализировать этот файл. Я знаю, что анализ не требуется, чтобы выяснить, правильно ли упорядочены уравнения. Мне просто интересно, можно ли для python каким-либо образом получить доступ к сценарию из скомпилированной версии, поэтому, если бы у меня была psi функция в качестве объекта в Python, я мог бы увидеть сценарий, который был скомпилирован для создания этого объекта. Я уверен, что этот вопрос немного сбивает с толку, так как я не уверен, что это лучший способ выразить это, но я рад прояснить любую путаницу, насколько смогу.

...