Python如何循环输入数字
在实际编程中,经常会遇到需要循环输入数字的情况,例如统计一组数字的总和、平均值,或者寻找最大值和最小值等。Python提供了多种方法来实现循环输入数字的功能,本文将介绍几种常用的方法,并提供示例代码解决一个实际问题。
使用while循环
while
循环是Python中最基本的循环结构之一,可以用于实现循环输入数字的功能。下面是一个示例代码,用于计算一组数字的总和:
numbers = [] # 创建一个空列表用于存储数字
total = 0 # 初始化总和为0
while True:
try:
number = float(input('请输入一个数字(输入任意非数字字符结束):'))
numbers.append(number) # 将输入的数字添加到列表中
total += number # 将输入的数字累加到总和中
except ValueError:
break # 输入非数字字符时退出循环
print('输入的数字为:', numbers)
print('总和为:', total)
在上述代码中,我们首先创建了一个空列表numbers
用于存储输入的数字,然后使用while
循环来反复读取用户输入的数字。在每次循环中,我们使用input()
函数获取用户输入的内容,并使用float()
函数将输入的字符串转换为浮点数。如果用户输入的是非数字字符,则会引发ValueError
异常,我们可以使用try-except
语句来捕获这个异常并退出循环。在每次循环中,我们将输入的数字添加到numbers
列表中,并累加到total
变量中。最后,输出用户输入的数字和计算得到的总和。
使用for循环和range函数
除了while
循环,Python还提供了for
循环结构和range()
函数来实现循环输入数字的功能。range()
函数用于生成一个指定范围的整数序列,可以与for
循环结合使用来重复执行一段代码。下面是一个示例代码,用于计算一组数字的平均值:
count = int(input('请输入要输入的数字个数:'))
numbers = [] # 创建一个空列表用于存储数字
for _ in range(count):
number = float(input('请输入一个数字:'))
numbers.append(number) # 将输入的数字添加到列表中
total = sum(numbers) # 使用sum函数计算数字的总和
average = total / count # 计算平均值
print('输入的数字为:', numbers)
print('总和为:', total)
print('平均值为:', average)
在上述代码中,我们首先使用input()
函数获取用户输入的数字个数,并使用int()
函数将输入的字符串转换为整数。然后,创建一个空列表numbers
用于存储输入的数字。接下来,使用for
循环和range()
函数来重复执行一段代码,代码块中使用input()
函数获取用户输入的数字,并将其添加到numbers
列表中。最后,使用sum()
函数计算列表中数字的总和,并计算平均值。最后输出用户输入的数字、总和和平均值。
解决实际问题:找出最大值和最小值
以上介绍了如何循环输入数字并计算总和、平均值等,接下来我们将使用循环输入的数字来解决一个实际问题:找出一组数字中的最大值和最小值。下面是一个示例代码:
count = int(input('请输入要输入的数字个数:'))
numbers = [] # 创建一个空列表用于存储数字
for _ in range(count):
number = float(input('请输入一个数字:'))
numbers.append(number) # 将输入的数字添加到列表中
maximum = max(numbers) # 使用max函数找出最大值
minimum = min(numbers) # 使用min函数找出最小值
print('输入的数字为:', numbers)
print('最大值为:', maximum)
print('最小值为:', minimum)
在上述代码中,我们先使用input()
函数获取用户输入的数字个数,并