raw_input() 函数在 Python 中起什么作用?
让我们考虑一个与用户交互的 Python 程序,它获取用户的输入并相应地调整程序的行为。Python 2.x 以名为 raw_input() 的函数形式提供了这样的程序,它允许您动态捕获用户输入。在本文中,我们将详细讨论 raw_input() 函数,探索其目的、用法和实际示例。无论您是新手还是经验丰富的 Python 程序员,了解如何整合用户输入都可以大大增强应用程序的功能和交互性。
了解 raw_input() 函数
raw_input() 函数是 Python 2.x 中的内置函数,在 Python 3.x 中被具有类似功能的 input() 函数取代。此函数使您能够在程序执行期间收集用户输入。它提示用户输入数据并以字符串形式返回输入。此函数有助于程序与用户之间的交流,从而实现动态交互和个性化体验。
raw_input() 的语法
要使用 raw_input() 函数,您需要在代码中调用它并将用户输入分配给变量。语法如下:
user_input = raw_input(prompt)
此处,prompt 是一个可选参数,用于向用户显示一条消息,告知他们预期的输入。
接受用户输入
让我们看看使用 raw_input() 函数接受用户输入的方式。请考虑以下示例:
在此代码片段中,系统提示用户输入其姓名。 raw_input() 函数等待用户的输入并将其分配给变量 name。然后程序通过显示用户的名字和欢迎消息来问候用户。
name = raw_input("输入您的姓名: ") print("您好, " + name + "!欢迎来到我们的程序。")
执行上述代码时,如果在提示符下输入"Shiro"并按回车键,则会得到以下输出。
输入您的姓名:Shiro 您好,Shiro!欢迎来到我们的程序。
捕获用户信息
raw_input() 函数通常用于收集用户的特定信息。例如,让我们创建一个程序来捕获用户的年龄并根据他们的输入打印自定义消息:
在此示例中,程序提示用户输入他们的年龄。输入存储在 age 变量中。通过使用 int() 将输入转换为整数,我们可以进行比较以确定用户是成年人还是未成年人。
示例
age = raw_input("你几岁了?: ") if int(age) >= 18: print("恭喜!你已经成年了。") else: print("你还是未成年人。好好享受青春吧!")
执行上述代码时,如果在提示符下输入 21 并按回车键,则会得到以下输出。
输出
你几岁了?: 21 恭喜!你已经成年了。
为了进一步说明此过程,下面是另一个示例代码片段:
示例
在此示例中
`raw_input()` 函数通过显示消息"输入您的姓名:"提示用户输入其姓名。
用户输入其姓名,例如"Saloni",然后按 Enter。
`raw_input()` 函数将输入读取为字符串并将其分配给变量"name"。
然后,程序利用"name"变量显示个性化的问候消息,例如"你好,Saloni!很高兴见到你。"
# 询问用户姓名 name = raw_input("输入您的姓名: ") # 显示个性化问候语 print("您好, " + name + "!很高兴见到您。")
输出
执行上述代码时,如果在提示符下输入 Saloni 并按 Enter,则会得到以下输出。
输入您的姓名:Saloni 您好,Saloni!很高兴见到您。
计算圆面积的示例
以下是此示例的细分:
程序通过显示消息"输入圆的半径:"提示用户输入圆的半径。
用户输入一个数值,例如"7.0"。
`raw_input()` 函数将输入读取为字符串并将其分配给变量 `radius`。
由于半径需要是数值才能进行计算,我们使用 `float()` 函数将其从字符串转换为浮点数。
程序使用公式 `area = 3.14 * radius ** 2` 计算圆的面积。
最后,程序将计算出的面积转换回字符串并将其与消息"圆的面积为:"连接起来,显示出来。
# 询问用户圆的半径 radius = raw_input("输入圆的半径: ") # 将半径从字符串转换为浮点数 radius = float(radius) # 计算圆的面积 area = 3.14 * radius ** 2 # 显示面积 print("圆的面积为: " + str(area))
输出
执行上述代码时,如果在提示符下输入 7.0 并按 Enter,则会得到以下输出。
输入圆的半径:7.0 圆的面积为:153.86
用户年龄验证示例
让我们考虑一下要采取的步骤此示例:
程序通过显示消息"输入您的年龄:"提示用户输入年龄。
用户以数字形式输入年龄,例如"16"。
`raw_input()` 函数将输入读取为字符串并将其分配给变量 `age`。
由于我们需要将年龄与数字进行比较,因此我们使用 `int()` 函数将其从字符串转换为整数。
程序使用 `if` 语句检查年龄是否大于或等于 18。
如果条件为真,程序将打印"您已达到访问此网站的年龄"。否则,它将打印"抱歉,您尚未达到访问此网站的年龄。"
# 询问用户的年龄 age = raw_input("输入您的年龄: ") # 将年龄从字符串转换为整数 age = int(age) # 检查用户是否年龄足够(18 岁或以上) if age >= 18: print("您已达到访问此网站的年龄。") else: print("抱歉,您未达到访问此网站的年龄。")
输出
执行上述代码时,如果在提示符下输入 16 并按 Enter,则会得到以下输出。
输入您的年龄:16 抱歉,您未达到访问此网站的年龄。
这些示例展示了 `raw_input()` 函数的不同用例,包括根据用户输入执行计算和根据年龄验证做出决策。
根据用户输入执行计算
raw_input() 函数还可以帮助您根据用户生成的值执行计算。让我们考虑一个简单的程序,它使用用户输入的长度和宽度来计算矩形的面积:
length = float(raw_input("输入矩形的长度: ")) width = float(raw_input("输入矩形的宽度: ")) area = length * width print("矩形的面积为: " + str(area))
输出
执行上述代码时,如果在提示符下输入 10 并按回车键,则会得到另一个提示符,输入 5 并按回车键,则会得到以下输出。
输入矩形的长度:10 输入矩形的宽度:5 矩形的面积为:50.0
在此示例中,提示用户输入矩形的长度和宽度。使用 float() 将输入转换为浮点数,允许使用小数。然后程序通过将长度和宽度相乘来计算面积并显示结果。
转换温度单位
raw_input() 函数还可以促进单位转换。让我们考虑一个使用用户输入将温度从摄氏温度转换为华氏温度的程序:
celsius = float(raw_input("输入摄氏温度: ")) fahrenheit = (celsius * 9/5) + 32 print("华氏温度为: "+ str(fahrenheit))
输出
执行上述代码时,如果在提示符下输入 26 并按回车键,则会得到以下输出。
输入摄氏温度: 26 华氏温度为: 78.8
在此示例中,提示用户输入摄氏温度。输入将转换为浮点数。然后,程序应用转换公式来计算华氏温度并将结果作为输出。
Python 中的 `raw_input()` 函数是动态捕获用户输入的强大工具。通过将用户输入合并到程序中,您可以为用户创建交互式和个性化的体验。在本文中,我们探讨了 `raw_input()` 函数的用途和用法,以及展示其多功能性的实例。现在您对 `raw_input()` 有了扎实的了解,您可以应用这些知识来增强 Python 程序并以有意义的方式吸引用户。
值得注意的是,在 Python 3 及更高版本中,`raw_input()` 函数已被 `input()` 函数取代,后者执行类似的功能,但直接将用户的输入作为字符串返回。