Сообщить об ошибке.

Функция runeval() модуля pdb в Python

Запуск отладчика из интерпретатора

Синтаксис:

import pdb

pdb.runeval(statement, globals=None, locals=None)

Параметры:

  • statement - оператор, который будет выполнен,
  • globals=None, locals=None - среда, в которой выполняется код.

Возвращаемое значение:

  • значение выражения statement.

Описание:

Функция runeval() модуля pdb оценивает выражение statement, заданное в виде строки или объекта кода под управлением отладчика.

Функция pdb.runeval() останавливается, возвращая значение выражения expression. В противном случае эта функция похожа на pdb.run().

Примеры использования:

# test.py
def plus(a, b):
    return a + b

class MyClass():
    def __init__(self, loops):
        self.count = loops
 
    def start(self):
        rez = []
        for i in range(self.count):      
            rez.append(i)
        return rez

Результат запуска:

>>> import pdb
>>> import test
>>> pdb.runeval('test.plus(3, 5)')
> <string>(1)<module>()
(Pdb) c
8
>>> pdb.runeval('test.MyClass(5).start()')
> <string>(1)<module>()
(Pdb) c
[0, 1, 2, 3, 4]