- ВКонтакте
- РћРТвЂВВВВВВВВнокласснРСвЂВВВВВВВВРєРСвЂВВВВВВВВ
- РњРѕР№ Р В Р’В Р РЋРЎв„ўР В Р’В Р РЋРІР‚ВВВВВВВВРЎР‚
- Viber
- Skype
- Telegram
Почему в командной строке не правильный вывод?
Вот ситуация: В командной строке Windows 10
при вводе команды:
>>> for i in [1, 2, 3]:
... print(i, end = ' ')
Выводит : 3
Вместо : 1 2 3
В IDLE(Python) и PyCharm все выводит правильно.
Как я понял, end() заменяет не только \n , но и все что находится до 3. Проблема появляется только в интерактивном сеансе Python в командной строке Windows (10).
Ответы (2 шт):
"Как я понял, end() заменяет не только /n , но и все что находится до 3" - это полная дичь. Проблема в другом. Я скопировал текст
for i in [1, 2, 3]:
print(i, end = ' ')
из текстового редактора и вставил его в командную строку, получил
В общем, нужно правильно вводить программу в интерпретатор командной строки.
ОБНОВЛЕНИЕ
Хотя, работает ИКС криво. Я например, ввёл всё в одной строке через Ctrl+L, и оно работает без отступа перед print:
Похоже у вас промпт питона >>>
затирает вывод, в конце которого не было перевода строки \n
:
1 2 3 <- что должно быть
>>> 3 <- что наблюдается
Не знаю, это прикол именно питона версии 1.13.1 или чей, но выглядит именно так. Потому что промпт должен быть справа от вывода, а у вас он слева. Возможно, интерактивный питон 1.13.1 делает почему-то "возврат каретки" \r
перед выводом промпта. Я в своём более старом питоне такого не наблюдаю, у меня сначала идёт вывод, а потом промпт:
1 2 3 >>>