input() 和 sys.stdin.readline() 之间的区别
Python是一种广泛使用的通用语言,可用于多种用途。接受任何语言的输入对人类来说就像呼吸一样重要。 Python提供了多种获取输入的方法。但是,我们都可能对每种方法之间的不同之处感到困惑。在本文中,我们将讨论两种这样的方法,即input()
和sys.stdin.readline()
。
注意:更多信息请参考Python教程
输入()
该函数首先从用户那里获取输入,然后对表达式求值,这意味着Python会自动识别用户输入的是字符串、数字还是列表。如果提供的输入不正确,则Python会引发语法错误或异常。
输入函数在Python中的工作原理:
- 当
input()
函数执行时,程序流程将停止,直到用户给出输入。 - 在输出屏幕上要求用户输入输入值的文本或消息显示是可选的,即,将在屏幕上打印的提示是可选的。
- 无论您输入什么作为输入,输入函数都会将其转换为字符串。如果您输入一个整数值,input()函数仍会将其转换为字符串。您需要在代码中使用类型转换将其显式转换为整数。
例子:
# Program to check input
# type in Python
num = input ("Enter number :")
print(num)
name1 = input("Enter name : ")
print(name1)
# Printing type of input value
print ("type of number", type(num))
print ("type of name", type(name1))
输出:
Sys.stdin.readline()
Stdin 代表标准输入,它是程序从中读取其输入数据的流。此方法与 input() 方法略有不同,因为它还读取用户输入的转义字符。此外,该方法还提供了大小的参数,即一次可以读取多少个字符。
例子:
# Python program to demonstrate
# sys.stdin.readline()
import sys
name = sys.stdin.readline()
print(name)
num = sys.stdin.readline(2)
print(num)
输出:
Input 和 sys.stdin.readline()函数之间的区别。
Input() | sys.stdin.readline() |
---|---|
The input takes input from the user but does not read escape character. | The readline() also takes input from the user but also reads the escape character. |
It has a prompt that represents the default value before the user input. | Readline has a parameter named size, Which is a non-negative number, it actually defines the bytes to be read. |