簡體   English   中英

從stdin / file讀取輸入並引發錯誤以減少輸入

[英]Read inputs from stdin/file and raise errors for less inputs

可以說我們有一個簡單的python代碼,如下所示:

num1 = input()
num2 = input()  
res = sum(num1,num2)

根據我的要求,我應該能夠以某種方式轉換上面的代碼(從用戶那里獲得一些輸入),以便能夠從預定義的文件中為其提供輸入。 怎么做 ? 一旦我們添加了該代碼,以上工作即可。 但是,如果我們在“ num3 = input()”下面添加另一個輸入,則在讀取一行時它會引發類似EOFError:EOF的錯誤。 如何產生這樣的錯誤?

num1 = input()
num2 = input()  
num3 = input()
res = sum(num1,num2)

如有任何問題,請讓我知道。

據我所知,除了stdin之外,沒有其他方法可以告訴Python輸入函數讀取任何內容。 無需重寫代碼以使用文件對象,您只需將文件重定向到stdin。 這將在文件末尾發送eof並引發您期望的錯誤。

例如運行:

python script.py < file.in

或者,如果文件的第一行上有一個shebang,並且已將其設置為可執行文件,則:

./script.py < file.in

所有這些都假設您正在運行基於Linux或POSIX shell的軟件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM