![](/img/trans.png)
[英]sys.stdin.readline() and input(): which one is faster when reading lines of input, and why?
[英]Is there any situation when input() is preferred over sys.stdin.readline()?
在Python中,我們有兩種廣泛使用的方法來獲取用戶輸入。 第一個input()方法和第二個readline()方法定義為sys.stdin.readline()。 我想知道在任何情況下,input()方法優於readline()方法的情況。
據我了解,readline()比input()更快。 這兩個都返回字符串值,我們必須根據需要進行類型轉換。 還有一個readlines()方法可以讀取多行用戶輸入。 從用戶讀取多行代碼時,最好使用readlines()嗎?
input()方法不需要任何導入,而readline()需要導入sys.stdin。 仍然input()較慢。 這是否意味着導入所需的時間可以忽略不計?
TLDR速度不是一個因素。
如果您的程序旨在從Unix過濾器之類的標准輸入中讀取數據,則不會使用input
而將使用sys.stdin
的方法,正是因為您使用不同的方法來匹配程序的數據流。
另一方面,如果您的程序設計為與用戶交互,那么input
顯然是可行的方法。 因為程序的速度並不是兩個調用的速度的最小差異,而是用戶交互的速度和可選的提示字符串提供的額外便利性是一個非常有力的支持input
參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.