在Python中,你可以通过以下几种方法输入任意数量的数字:
1. 使用`input()`函数和循环:
inputs = []while True:user_input = input("输入一个数字(或按回车退出): ")if user_input == "":breakinputs.append(user_input)
2. 使用生成器:
def input_generator():while True:user_input = input("输入一个数字(或按回车退出): ")if user_input == "":returnyield user_inputinputs = list(input_generator())[1:] 去掉第一个空字符串
3. 使用`iter()`函数:
def input_numbers():while True:user_input = input("输入一个数字(或按回车退出): ")if user_input == "":breakyield int(user_input)inputs = list(input_numbers())[1:] 去掉第一个空字符串
4. 使用`map()`函数:
inputs = list(map(int, input("请输入多个以空格隔开的整数: ").split()))

5. 使用`split()`函数和列表推导式:
inputs = [int(x) for x in input("请输入多个以空格隔开的整数: ").split()]
6. 使用`strip()`函数和`split()`函数:
inputs = list(map(int, input("请输入多个以空格隔开的整数: ").strip().split()))
请注意,`input()`函数返回的是字符串类型,如果需要将输入转换为整数或浮点数,可以使用`int()`或`float()`函数。如果用户输入的是非数字字符,程序会引发`ValueError`异常。
如果你需要计算这些数字的平均值,可以使用以下代码:
def sum_numbers(numbers):return sum(numbers)def average_numbers(numbers):return sum_numbers(numbers) / len(numbers)numbers = inputs 使用上面任意一种方法获取的数字列表print("平均值是:", average_numbers(numbers))
请根据你的需求选择合适的方法来输入任意数量的数字
