📜  Python中 input() 和 raw_input() 函数的区别(1)

📅  最后修改于: 2023-12-03 15:34:21.524000             🧑  作者: Mango

Python中 input() 和 raw_input() 函数的区别

在Python中,input()和raw_input()都是用于获取用户输入的函数,两者非常相似,但是有一些重要的区别。

raw_input()

raw_input()函数在Python 2中非常常见,但是在Python 3中已经被移除。在Python 2中,它接受一个字符串作为参数,并提示用户在控制台输入一行文本。输入的结果是一个字符串,可以存储在变量中并处理。例如,下面的代码将请求用户输入他们的姓名并将结果存储在变量中:

name = raw_input("What's your name? ")
input()

与raw_input()相比,input()函数的行为有所不同,它是Python 3中的内置函数。它接受一个字符串作为参数,并像raw_input()一样提示用户在控制台输入一行文本。但是,与raw_input()不同的是,input()函数将用户输入的结果作为Python代码来处理,并在控制台上返回该代码的结果。例如,下面的代码将请求用户输入一个数字,它将取用户输入,并将其乘以2:

num = input("Enter a number: ")
print(int(num) * 2)

然而,需要注意的一点是,input()函数在Python 2中也是存在的,但是它的行为与Python 3中的不同。在Python 2中,input()函数不像raw_input()一样将结果作为字符串返回,而是将结果作为Python代码来处理并返回结果。

区别

因此,两者的区别在于raw_input()函数返回的是字符串,而input()函数返回的是Python代码的结果。

在Python 3中,raw_input()函数已被移除,只有input()函数是可用的,因此在Python 3中不需要区分它们之间的区别。在Python 2中,raw_input()函数仍然可用,但是input()函数的行为与Python 3中的不同,因此需要注意它们之间的区别。