Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705

Как считать строку из файла используя input() и знак "<"?

07.11.2016, 12:39. Показов 4037. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Друзья! Синтаксис file.py < src.txt (прочитано в книге Саммерфильда, глава "Составляющая №7: ввод/вывод
") прост, поэтому его и хочу использовать для считывания строки из файла src.txt; выдаёт такую ошибку:

Windows Batch file
1
2
3
4
5
C:\>test.py < src.txt
Traceback (most recent call last):
  File "C:\test.py", line 1, in <module>
    line = input()
RuntimeError: input(): lost sys.stdin
Python
1
2
3
#test.py
line = input()
print (line)
Хотя, как я знаю, какое-то там исключение выкидывается, когда достигается конец файла. У меня же в файле src.txt несколько строк, поэтому первая-то должна считаться! Не считывается. (Ввод же с консоли работает нормально) ЧЯДНТ? Спасибо, кто откликнется.
Вложения
Тип файла: txt src.txt (64 байт, 0 просмотров)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.11.2016, 12:39
Ответы с готовыми решениями:

Считать с файла (input.txt) строку, заменить в строке латинские буквы на русские, записать файл (input.txt) эту строку
Считать с файла (input.txt) строку, заменить в строке латинские буквы на русские, записать файл (input.txt) эту строку.

Считать с файла (input.txt) строку, перевернуть строку, записать файл (put.txt) эту строку
Считать с файла (input.txt) строку, перевернуть строку, записать файл (put.txt) эту строку.

Как перевернуть строку не используя reverse()? Используя input
Как перевернуть массив не используя reverse следуя такой логике: a= a=b a=a a=b print(a) вот так выглядит ,то что...

16
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
07.11.2016, 13:25
Лучший ответ Сообщение было отмечено kravam как решение

Решение

Запускайте непосредственно питоном
Windows Batch file
1
C:\>python test.py < src.txt
Это баг XP - перенаправление потоков при запуске через ассоциации файлов работает не корректно
1
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
07.11.2016, 16:09
shsv, причем тут вообще xp то?
kravam, по другому данные считывать надо просто
Python
1
2
3
4
import sys
 
data = sys.stdin.read()
print(data)
0
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
07.11.2016, 16:49
alex925, такова постановка вопроса (почему при
Windows Batch file
1
C:\>test.py < src.txt
брошено исключение
Windows Batch file
1
RuntimeError: input(): lost sys.stdin
), я на него и ответил (у kravam XP)
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 15:01  [ТС]
Дабы не создавать новой темы, попробую добить этот вопрос здесь. IDE PyCharm Community Edition 3.1.4 со встроенной консолью. Считаю, что IDE должна в отличие от XP работать получше в этом отношении. Запускаю в консоли IDE:

Python
1
2
3
#test.py
line = input()
print (line)
Windows Batch file
1
C:\Python31\python.exe C:/test.py < src.txt
Программа ждёт ожидания ввода с консоли, а файл src.txt ей не считывается. Может, IDE нужно настроить как-нибудь? (в настройках строка "< src.txt" идёт как параметр test.py)
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
10.11.2016, 15:04
IDE работает с тем, что предоставляет система и ни какой магии не делает, если в системе проблема то ide не решит ее.
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 15:20  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
IDE работает с тем, что предоставляет система и ни какой магии не делает, если в системе проблема то ide не решит ее.
Ну это-то понятно. Но ситуация на этот раз не описываемая вами. а другая. Не такая, что проблемы XP распространяются на проблемы IDE. Видно-то как раз противоположное, XP работает, а IDE нет. Ещё раз:

В консоли XP эта команда работает:
Windows Batch file
1
C:\Python31\python.exe C:/test.py < src.txt
Но та же самая команда в консоли IDE не работает. В отладчике не посмотреть, вот что плохо.
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
10.11.2016, 16:39
У меня в консоли pycharm все прекрасно работает (все и описанная тобой команда разумеется). По этому я все же склонен полагать, что проблема в системе.
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 17:27  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
У меня в консоли pycharm все прекрасно работает (все и описанная тобой команда разумеется). По этому я все же склонен полагать, что проблема в системе.
а у тебя какая версия pycharm?
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
10.11.2016, 17:42
2016.2 pro
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 18:01  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
2016.2 pro
а у меня 3.1.4 Но сейчас я скачал 2016.1.4, а всё равно проблема осталась. В любом случае ты же понимаешь, я не могу в разделе "Windows XP" спросить, почему у меня консоль pycharm работает не так, как хотелось бы.

Поэтому вопрос открыт ЗДЕСЬ.
А ещё хотелось бы спросить, как ты запускаешь test.py в консоли IDE?
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
10.11.2016, 18:15
Цитата Сообщение от kravam Посмотреть сообщение
А ещё хотелось бы спросить, как ты запускаешь test.py в консоли IDE?
Эммм, вот так.. Другие способы запуска мы тут как бы и не обсуждали...
Bash
1
python3 temp2.py < ./file.txt
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 18:50  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
Эммм, вот так.. Другие способы запуска мы тут как бы и не обсуждали...
Ты в консоли это набиваешь? Просто я не могу открыть консоль в IDE, а потом там напечатать

Windows Batch file
1
python3 temp2.py < ./file.txt
+++++++++++++++++++++++++++++++++++++

Я жму правой кнопкой мыши на поле файла и выбираю "Run test". После этого запускается консоль IDE, в которой АВТОМАТОМ запускается интерпретатор, которому АВТОМАТОМ подаётся параметром test.py, которому АВТОМАТОМ подаётся параметром "< src.txt" (если последний перед запуском "Run test" предварительно прописан как параметр скрипта test.py)

Ты так же делаешь?
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
10.11.2016, 19:27
Цитата Сообщение от kravam Посмотреть сообщение
Ты в консоли это набиваешь?
Естественно, где я ещё по твоему консольную команду? (риторический вопрос)

Цитата Сообщение от kravam Посмотреть сообщение
Я жму правой кнопкой мыши на поле файла и выбираю "Run test". После этого запускается консоль IDE, в которой АВТОМАТОМ запускается интерпретатор, которому АВТОМАТОМ подаётся параметром test.py, которому АВТОМАТОМ подаётся параметром "< src.txt" (если последний перед запуском "Run test" предварительно прописан как параметр скрипта test.py)
Это передача аргументов командной строки в скрипт, а не запуск консольной команды как ты думаешь. По этому все работает именно так как и задумано.
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 19:29  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
Естественно, где я ещё по твоему консольную команду? (риторический вопрос)
Но я-то не набиваю это в консоли, вот в чём дело. Ты, наверное, делаешь так, как показано на рисунке. Я так тоже могу. То есть открываем терминал и там просто набиваем:

Python
1
python3 temp2.py < ./file.txt
Очень оригинально. Вопрос - как отлаживать-то?

++++++++++++++++++++++++++++++++++++

Цитата Сообщение от alex925 Посмотреть сообщение
Это передача аргументов командной строки в скрипт, а не запуск консольной команды как ты думаешь. Все работает именно так как и задумано.
Ты бы лучше подсказал, как запустить с направлением из файла, чтобы можно было ОТЛАЖИВАТЬ. То, что у меня не выходит ничего, я и сам вижу.
Миниатюры
Как считать строку из файла используя input() и знак "<"?  
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
10.11.2016, 19:33
Цитата Сообщение от kravam Посмотреть сообщение
Очень оригинально. Вопрос - как отлаживать-то?
А запуская из консоли ты отлаживать не можешь?
А вообще вся проблема в том, что кто-то криво вопрос сформулировал, а ты изначально ничего не сказал о том, что ты хочешь получить.
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
10.11.2016, 19:42  [ТС]
Цитата Сообщение от alex925 Посмотреть сообщение
А запуская из консоли ты отлаживать не можешь?
Нет. Подскажешь, как?

Цитата Сообщение от alex925 Посмотреть сообщение
А вообще вся проблема в том, что кто-то криво вопрос сформулировал, а ты изначально ничего не сказал о том, что ты хочешь получить.
Просто я не знал, что можно запускать интерпретатор из IDE больше, чем одним способом.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.11.2016, 19:42
Помогаю со студенческими работами здесь

Как, используя fstream, считать текст из файла, содержащего несколько признаков конца файла?
Доброго всем времени. У меня есть файл, содержащий 2 JSON документа. Структура такая: - набор символов. Какие данные не...

Как считать все числа с файла не используя массив?
// ConsoleApplication777.cpp : Defines the entry point for the console application. // #include &quot;stdafx.h&quot; #include &quot;math.h&quot; ...

Как считать каждый байт из файла, используя поток?
Исходный файл содержит информацию порциями по 55 байт (пакеты). Необходимо прочитать каждый байт например в массив. Тогда получается будет...

Как считать определённую строку из файла
Помогите, пожалуйста, мне надо считать из текстового файла строку, сначала первую, потом вторую и т.д.Заранее спасибо.

Как считать строку из файла в char?
Всем привет! Считать строку из файла в string - не проблема. Функцию getline() и погнали. Но мне нужно загнать данные в массив char. Как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
YAFU@home — распределённые вычисления для математики. На CPU
Programma_Boinc 20.01.2026
YAFU@home — распределённые вычисления для математики. На CPU YAFU@home — это BOINC-проект, который занимается факторизацией больших чисел и исследованием aliquot-последовательностей. Звучит. . .
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru