Мне нужно прочитать содержимое текстового файла, который был передан в программу Python.Файл во входной файл может быть передан следующим образом:
- Ваша программа должна принимать входные данные из двух источников: имя файла, переданное в аргументах командной строки, и STDIN.Например, в Linux или OSX
./myprogram input.txt
и ./myprogram < input.txt
должны работать.
Я не знаю, как это сделать.
if __name__ == '__main__':
# I don't know what to do here.
Входной файл имеетследующие строки, и каждая строка должна быть проанализирована.
Add Tom 4111111111111111 $1000
Add Lisa 5454545454545454 $3000
Add Quincy 1234567890123456 $2000
Charge Tom $500
Charge Tom $800
Charge Lisa $7
Credit Lisa $100
Credit Quincy $200
Всякий раз, когда я пытаюсь python myprogram.py > input.txt
, программа зависает.Я использую Python 3.6.5, если это помогает.
Обновление:
Я пробовал что-то вроде этого:
(env) myproject (master) $ python main.py > test.txt
testing testing testing
1 2 3
1 2 3
Файл создает новый файл, если он это делаетне существует или перезаписывает существующий файл с введенным содержимым.В этом случае новый файл с именем test.txt
был создан с указанным выше содержимым.
Update # 2
Я пробовал что-то вроде этого
if __name__ == '__main__':
for line in sys.stdin.readline():
print (line)
Для одногострока, подобная этой
Add Tom 4111111111111111 $1000
Каждый символ отображается в новой строке, как в
A
d
d
T
o
m
. . .
Я хочу, чтобы все символы печатались в одной строке.