python3 的input函数功能详解

  • Post category:Python

当我们需要通过用户的控制台输入数据时,python3内置的input()函数可以帮助我们实现这一目的。input()函数会从控制台读取一行文本,并返回用户输入的值。

基本语法

input()函数的基本语法如下:

input([prompt])

其中,prompt参数是一个可选的字符串,表示在等待用户输入时,向控制台输出的提示信息。若省略该参数,将不会有任何提示信息。在输入数据时,按下回车键即可结束输入。

下面是一个简单的示例代码:

name = input('请输入您的姓名:')
print('您好,{}!'.format(name))

这个代码段中,使用input()函数读取用户输入的姓名,然后使用格式化字符串的方式输出欢迎信息。在控制台中运行时,会先输出”请输入您的姓名:”这一提示信息,等待用户输入其姓名,并按下回车键提交,之后输出欢迎信息。

input()函数的返回值

input()函数执行完毕之后,返回的是字符串类型的用户输入值。可以通过强制类型转换来将其转换为其他类型的数据,例如整数或浮点数。

下面是一个示例代码,演示强制类型转换如何应用于input()函数返回的字符串类型:

age_str = input('请输入您的年龄:')
age = int(age_str)
print('您的年龄是:', age)

在这个示例代码中,首先使用input()函数读取用户输入的年龄,返回的是字符串类型的输入值。之后,使用int()函数将输入值强制转换为整型数据,并将其赋值给变量age。最后,通过print()函数输出该变量的值,以验证强制类型转换是否成功。

实例1:计算用户输入数列的总和

下面是一个示例代码,使用input()函数读取用户输入的一组数值,然后计算其总和并输出。

input_str = input('请输入一组数,用空格分隔:')
numbers = input_str.split()
sum = 0
for num in numbers:
    sum += int(num)
print('总和为:', sum)

在这个示例代码中,首先使用input()函数读取用户输入的一组数值,并将其保存为一个字符串。之后,使用split()方法将字符串按照空格分隔为多个字符串,存放在列表numbers当中。然后,使用for循环遍历列表numbers中的所有数值,并依次将它们转换为整型数据,加到变量sum中。最后,使用print()函数输出总和的结果。

实例2:模拟1v1对决

下面是一个示例代码,模拟两个玩家进行1v1对决,分别读取其输入的攻击力值,然后根据攻击扣血规则模拟对决过程,输出最终胜者。

player1_atk = int(input('请输入玩家1的攻击力:'))
player2_atk = int(input('请输入玩家2的攻击力:'))
player1_hp = player2_hp = 100
while player1_hp > 0 and player2_hp > 0:
    player1_hp = player1_hp - player2_atk
    player2_hp = player2_hp - player1_atk
if player1_hp > 0:
    print('玩家1获胜!')
else:
    print('玩家2获胜!')

在这个示例代码中,首先分别使用input()函数读取两个玩家的攻击力值,并将其保存为整型变量。之后,初始化两个变量player1_hp和player2_hp为100,表示玩家初始的生命值。然后,使用while循环,进入1v1对决循环,直到一方的生命值降为0以下为止。在每一轮循环时,根据攻击扣血规则更新玩家的生命值变量。最后,通过判断生命值的状态,输出获胜者的信息。