Как завершить ввод 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.