Как использовать list () в сеансе ipdb? - PullRequest
0 голосов
/ 29 января 2020

В скрипте Python 3.5.2, где у меня есть, например,

import ipdb
ipdb.set_trace()

Интерпретатор нажимает эти строки и отправляет меня в сеанс ipdb. Понятно, что ipdb имеет ограниченную функциональность по сравнению с сеансом интерпретатора i Python (например, без команд magi c). Тем не менее, я удивлен, обнаружив, что некоторые встроенные Python не работают, а именно list().

ipdb> some_data                                                                                                                                               
<zip object at 0x7f416e820388>
ipdb> list(some_data)                                                                                                                                         
*** Error in argument: '(some_data)'
ipdb> list([])                                                                                                                                                
*** Error in argument: '([])'

Я предполагаю, что между встроенной функцией существует конфликт имен list() и одна из команд ipdb. Есть ли способ обойти это?

1 Ответ

1 голос
/ 29 января 2020

в pdb кажется, что вы можете использовать C как преобразования. Вероятно, это похоже на I Python.

Можете ли вы попробовать:

ipdb> res = (list) (some_data) 
...