Является ли какая-либо назначенная переменная равной (==) для raw_input() в Python2?

«raw_input» обычно используется для получения ответа на приглашение на строку, а затем он также может быть назначен (=) переменной.

Но я нашел что-то странное (для меня) и не могу понять. В случае ошибки (см. пример ниже) я ставлю равенство (==) для присваивания переменной в функции. Затем я запускаю его в интерпретаторе и не имею никаких ошибок. Я через мой сценарий был хорошо сделан, но он не мог работать как мой эксперт.

Мои вопросы: я хотел бы знать, что такое использование «raw_input» в Python правильно? Если да, то как мы его используем? Если нет, то почему интерпретатор не выдает нам предупреждение об ошибке?

Большое спасибо.

Пример:

Python 2.7.3 (default, Apr 24 2012, 00:00:54) 
[GCC 4.7.0 20120414 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> v = "Variable"
>>> def test():
...     v == raw_input(">")
...     print v
... 
>>> test()
>Hello!
Variable
>>> 

person wuxxf    schedule 06.12.2012    source источник


Ответы (1)


Этот:

v == raw_input(">")

это просто сравнение. В результате вы получаете True или False, а затем выбрасываете его, потому что не даете ему имени. Вы могли бы написать

comparison = v == raw_input(">")
print comparison

чтобы увидеть значение.

person DSM    schedule 06.12.2012