Я ищу способ быстро напечатать имя и значение переменной при быстром развитии/отладке небольшого скрипта python в командной строке unix/ssh.log имя переменной и значение
Это кажется очень распространенным требованием, и кажется бесполезным (по нажатию клавиш и времени/энергии) дублировать переменные_имя на каждой строке, которая печатает или регистрирует ее значение. т.е. вместо
print 'my_variable_name:', my_variable_name
Я хочу, чтобы иметь возможность сделать следующее за ул, межды, список, Dict
log(my_variable_name)
log(i)
log(my_string)
log(my_list)
и получить следующий вывод
my_variable_name:some string
i:10
my_string:a string of words
my_list:[1, 2, 3]
идеально выход будет также запишите имя функции
Я видел некоторые решения, пытающиеся использовать местных жителей, глобальные, fr ames и т. д. Но я еще не видел что-то, что работает для ints, строк, списков и работает внутри функций тоже.
Благодаря
Звучит как макрос ... –
Почему бы не использовать pdb: http://docs.python.org/2/library/pdb.html? – lucasg
Злые хаки: http://stackoverflow.com/questions/932818/retrieving-a-variables-name-in-python-at-runtime, http://stackoverflow.com/questions/2553354/how-to-get- a-variable-name-as-a-string-in-python – doctorlove