2024-03-29 08:27:15 发布
网友
我有很多很多的数字要写,写出来根本没有效率。。。在
a = float(input("Enter the first number: ")) b = float(input("Enter the second number: ")) c = float(input("Enter the third number: "))
…当你有一千个号码。那么,我如何使用范围特性从一条输入行中获取许多数字,然后计算所有输入的平均值或平均值?在
一个简洁的方法是列表理解。在
nums = [float(input('enter number {}: '.format(i+1))) for i in range(100)]
用你喜欢的范围替换100。这将创建一个输入数字的列表。您可以使用nums[n-1]访问第n个输入号码。在
nums[n-1]
或者,您可以将单个输入字符串解析为浮点列表:
我更喜欢这样,而不是很多提示。在
最后,如果可以从命令行获取数字,可以这样做
演示:
$ python3 getinput.py 1.0 -5.37 8.2 [1.0, -5.37, 8.2]
要获得平均值,请发出sum(nums)/len(nums),假设您的列表不是空的。在
sum(nums)/len(nums)
一种方法是使用for循环重复查询数字。如果只需要平均值,只需增加一个变量并除以最后的查询总数就足够了:
n = 10 temp = 0 for i in range(n): temp += float(input("Enter a number")) print("The average is {}".format(temp / n))
通过使用内置的sum()函数和生成器理解功能,可以大大缩短代码:
一个简洁的方法是列表理解。在
用你喜欢的范围替换100。这将创建一个输入数字的列表。您可以使用
nums[n-1]
访问第n个输入号码。在或者,您可以将单个输入字符串解析为浮点列表:
^{pr2}$我更喜欢这样,而不是很多提示。在
最后,如果可以从命令行获取数字,可以这样做
^{3}$演示:
要获得平均值,请发出
sum(nums)/len(nums)
,假设您的列表不是空的。在一种方法是使用for循环重复查询数字。如果只需要平均值,只需增加一个变量并除以最后的查询总数就足够了:
通过使用内置的sum()函数和生成器理解功能,可以大大缩短代码:
^{pr2}$相关问题 更多 >
编程相关推荐