Страницы

Поиск по вопросам

пятница, 13 декабря 2019 г.

Метод split в python

#python #python_2x


Код: 

a=input().split()
print(a)


При подаче на ввод строки '1 2 3'

Traceback (most recent call last):   File "", line 1, in 
        a=input().split()   File "", line 1
    1 2 3
      ^ SyntaxError: invalid syntax


Выражение взято из примера, должно работать. В чем может быть загвоздка? 
    


Ответы

Ответ 1



Это не split - это input вываливает исключение. А все почему? Безблагодатность. Документация говорит вот что - input делает две вещи: 1) Читает из stdin. 2) Все, что прочитано, выполняется (eval). Соответственно, строка 1 2 3 не может быть выполнена из-за неверного синтаксиса. В Py3 поведение input() изменили, чтобы люди больше не путались. Используйте raw_input. Или Python3. А еще можно воспользоваться библиотекой six, чтобы при внезапном переезде на другую версию ваш код не поломался, потому что в Py3 функция raw_input() отсутствует.

Ответ 2



Просто замени метод input() на raw_input()

Комментариев нет:

Отправить комментарий