1) Результатом repr('foo')
является строка 'foo'
. В вашей оболочке Python результат выражения также выражается как представление, поэтому вы видите repr(repr('foo'))
.
2) eval
вычисляет результат выражения. Результатом всегда является значение (например, число, строка или объект). Несколько переменных могут ссылаться на одно и то же значение, например:
x = 'foo'
y = x
x и y теперь относятся к одному и тому же значению.
3) Я понятия не имею, что вы имели в виду здесь. Можете ли вы опубликовать пример и что вы хотите увидеть?