Sys stdin readlines python как закончить ввод
Перейти к содержимому

Sys stdin readlines python как закончить ввод

  • автор:

 

Как завершить ввод sys.stdin.readlines ()?

Это может быть глупый вопрос, но поскольку я не могу найти ответ, я должен его спросить.

В интерактивном python я хочу обработать сообщение, которое я получаю:

Все работает отлично, но. как остановить его от ввода ввода и сохранить его в переменной сообщений? Остановка с помощью ctrl + c останавливает весь процесс, поэтому нет никаких данных для сохранения в любом месте. Я думаю, там простой ответ, который я просто не могу найти.

4 ответа

Для системы на основе unix:

Здравствуйте, вы можете использовать ленту: Ctrl d

Ctrl d закрывает стандартный ввод (stdin), отправив EOF.

Для Windows:

Чтобы отправить EOF в Windows, вы можете заменить Ctrl d на Ctrl z

Это старый вопрос, но ему нужно обновить информацию о Windows и разных раскладках клавиатуры.

Если ни один CTRL + Z и CTRL + D ** не работает для вас в Windows, и вы блуждаете, что происходит:

  • проверьте, используете ли вы стандартную раскладку английской клавиатуры
  • Если у вас есть разная раскладка клавиатуры, отличная от стандартной, попробуйте переключить настройку клавиатуры на английский язык на языковой панели, затем попробуйте нажать ctrl + z после изменений.
  • Если вы все еще запутались, посмотрите на экран, что появляется в командной строке при нажатии ctrl + z. Какой символ вы видите? Когда я нажимал ctrl + z, я видел это: ^ Y, и когда по ошибке я нажал ctrl + y, я увидел это ^ Z, я нажал enter, и вход был сделан, EOF отправлен.

Это несколько странно и противоречиво. Некоторое время назад я сменил макет ключей на включение польских символов, но все общие ключи остались неизменными, z по-прежнему отображается на z, когда я обычно использую клавиатуру, обычно ctrl + z ничего не делает на моей клавиатуре, поэтому меня не следует менять, Но, видимо, в cmd он работает по-другому, чтобы иметь ссылку по умолчанию между ctrl и z, мне нужно переключиться на макет по умолчанию или использовать управление y для отправки EOF.

Как завершить ввод sys.stdin.readlines ()?

Это может быть глупый вопрос, но, поскольку я не могу найти ответа, я должен его задать.

В интерактивном питоне я хочу обработать сообщение, которое я получаю:

Все работает нормально, но . как не дать ему получить ввод и сохранить его в переменной сообщения? Остановка с помощью ctrl + c останавливает весь процесс, поэтому никаких данных для сохранения нигде не требуется. Думаю, есть простой ответ, который я просто не могу найти .

5 ответы

Для системы на основе unix:

Здравствуйте, можете записать: Ctrl d

Ctrl d закрывает стандартный ввод (stdin), отправляя EOF.

Для Windows:

Чтобы отправить EOF в Windows, вы можете заменить Ctrl d by Ctrl z

ответ дан 05 апр.

Это старый вопрос, но он нуждается в обновлении о Окна и разные раскладки клавиатуры.

Если ни CTRL+Z ни CTRL + D ** работает для вас в Windows и вы блуждаетесь, что происходит, сделайте это:

 

  • проверьте, используете ли вы английская раскладка клавиатуры по умолчанию
  • если у вас другая, нестандартная раскладка клавиатуры, попробуйте переключить настройку клавиатуры на английский на языковой панели, а затем попробуйте нажать ctrl + z после изменений
  • если вы все еще не уверены, посмотрите на экран, что появляется в командной строке при нажатии ctrl + z. Какой символ вы видите? Когда я нажимал ctrl + z, я видел это: ^ Y, и когда я по ошибке нажал ctrl + y, я увидел это ^ Z, я нажал Enter, и ввод был принят, EOF отправлен.

Это несколько странно и нелогично. Некоторое время назад я изменил раскладку клавиш, чтобы включить полированные символы, но все общие клавиши остались без изменений, z по-прежнему сопоставляется с z, когда я обычно использую клавиатуру, обычно ctrl + z ничего не делает на моей клавиатуре, поэтому меня не следует менять . Но, по-видимому, в cmd он работает по-другому, чтобы иметь связь по умолчанию между ctrl и z, мне нужно переключиться на макет по умолчанию или использовать элемент управления y для отправки EOF.

How to finish sys.stdin.readlines() input?

This might be a silly question, but as I can’t find an answer, I have to ask it.

In interactive python I want to process a message which i get with:

Everything works fine, but. how to stop it from getting an input and make it save into message variable? Stopping with ctrl+c stops whole process so there is no input to be saved anywhere. I guess there’s an easy answer I just can’t find.

6 Answers 6

For UNIX based systems (Linux, Mac):

Hello, you can type : Ctrl d

Ctrl d closes the standard input (stdin) by sending EOF.

For Windows :

To send EOF on Windows, type Ctrl z

This is an old question but it needs an update about Windows and different keyboard layouts.

If neither CTRL + Z nor CTRL + D ** work for you on Windows and and you’re wandering what is going on do this:

  • check if you are using default english keyboard layout
  • if you do have different, non-default keyboard layout try switching keyboard setting to English in language bar, then try pressing ctrl + z after changes
  • if you’re still confused look at the screen, what appears in command line when you press ctrl + z. What symbol do you see? When I was pressing ctrl + z I was seeing this: ^Y, and when by mistake I pressed ctrl + y I’ve seen this ^Z, i pressed enter and the input was taken, EOF sent.

This is somewhat strange and counterintuitive. I changed keys layout some time ago to include polish characters, but all the common keys are left unchanged, z still maps to z when I use the keyboard normally, normally ctrl + z does nothing in my keyboard, so I shouldn’t be changed. But apparently in cmd it works differently, in order to have default link between ctrl and z I have to switch to default layout, or use control y to sent EOF.

Sys stdin readlines python как закончить ввод

This might be a silly question, but as I can’t find an answer, I have to ask it.

In interactive python I want to process a message which i get with:

Everything works fine, but. how to stop it from getting an input and make it save into message variable? Stopping with ctrl+c stops whole process so there is no input to be saved anywhere. I guess there’s an easy answer I just can’t find.

5 Answers 5

For unix based system :

Hello, you can tape : Ctrl d

Ctrl d closes the standard input (stdin) by sending EOF.

For Windows :

To send EOF on Windows, you can replace Ctrl d by Ctrl z

This is an old question but it needs an update about Windows and different keyboard layouts.

If neither CTRL + Z nor CTRL + D ** work for you on Windows and and you’re wandering what is going on do this:

  • check if you are using default english keyboard layout
  • if you do have different, non-default keyboard layout try switching keyboard setting to English in language bar, then try pressing ctrl + z after changes
  • if you’re still confused look at the screen, what appears in command line when you press ctrl + z. What symbol do you see? When I was pressing ctrl + z I was seeing this: ^Y, and when by mistake I pressed ctrl + y I’ve seen this ^Z, i pressed enter and the input was taken, EOF sent.

This is somewhat strange and counterintuitive. I changed keys layout some time ago to include polish characters, but all the common keys are left unchanged, z still maps to z when I use the keyboard normally, normally ctrl + z does nothing in my keyboard, so I shouldn’t be changed. But apparently in cmd it works differently, in order to have default link between ctrl and z I have to switch to default layout, or use control y to sent EOF.

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *