Допустим, у меня есть файл data.txt
:
1
2
3 4 5
И у меня есть программа на Python:
fd = open('data.txt')
sys.stdin = fd
a= int(input()) # expect to be 1
b= int(input()) # expect to be 2
c = [int(e) for e in input().strip().split(' ')] # expect to be [3, 4, 5]
sys.stdin = sys.__stdin__ # Reset the stdin to its default value
Запустив этот скрипт, я ожидаю иметь 3 переменные a = 1
, b = 2
, c = [3, 4, 5]
.
Но когда программа сталкивается с input()
, она просто застревает там вместо чтения строки из файлового дескриптора.
Могу ли я спросить, как мне исправить эту программу?
Спасибо