Форум сайта python.su
0
Добрый день.
Хочу сделать скрипт, чтобы запускать его так
С:\mescript.py < dic.txt > rez.txt
У меня текстовый файл dic.txt слова по одному в строку
Пишу скрипт myscript.py
# -*- coding: utf-8 -*- import os import sys os.chdir(os.path.dirname(os.path.abspath(__file__))) while True: try: line=input() print(line) except EOFError: break
C:\>myscript.py < dic.txt > rez.txt
Traceback (most recent call last):
File "C:\myscript.py", line 8, in <module>
line=input()
RuntimeError: input(): lost sys.stdin
@echo on
C:\Python33\python myscript.py < dic.txt
script.bat > rez.txt
Отредактировано _sheva740 (Фев. 6, 2014 13:28:15)
Офлайн
7
1) в винде тоже есть перенаправление?
2) зачем придумывать такое? вот прикольно было бы, если кнопку “резет” поместили не на системнике, а на клаве возле “ентера”? не надо решать задачи извращёнными путями
Офлайн
0
Ну ведь можно же как-то?
Подскажите пожалуйста.
))
Офлайн
7
можно через sys.argv, парсить всё, что находится в командной строке после самого скрипта, но это извращение, 18+… а в Северной Корее могли бы и руки отрубить
Офлайн
0
можно через sys.argv, парсить всё, что находится в командной строкеДа не, важно же чтобы без параметров ком строки, а только перенаправлением
Офлайн
19
Какая то виндузячья фича с перенаправлением под никсы работает без проблем
Если input заменить на sys.stdin.read, то работает.
Отредактировано PanovSergey (Фев. 6, 2014 19:55:29)
Офлайн
0
У меня
Python 3.3
XP SP2
… и такая ошибка ((((
C:\>myscript.py <dic.txt >rez.txt
Traceback (most recent call last):
File "C:\myscript.py", line 7, in <module>
line=input()
RuntimeError: input(): lost sys.stdin
Офлайн
857
_sheva740это проблемы системы
… запускаю …
Ошибка
_sheva740хочешь программировать - поставь линукс
не понимаю что делать
Офлайн
19
# -*- coding: utf-8 -*- import os import sys import fileinput os.chdir(os.path.dirname(os.path.abspath(__file__))) for line in fileinput.input(): print line
Отредактировано PanovSergey (Фев. 6, 2014 20:12:33)
Офлайн
19
py.user.nextОчень спорное утверждение.
хочешь программировать - поставь линукс
Офлайн