本关任务是利用合适的方法快速创建数字列表,并能够对列表中的元素数值进行简单的统计运算。在数据可视化的背景下,数字列表在 Python 列表中的应用十分广泛,列表十分适合存储数字集合。
本关目标是让学习者掌握一些处理数字列表的基本方法,主要包括数字列表的创建、对数字列表进行简单的统计运算等。例如,我们要创建一个从2到10的偶数的数字集合,然后计算出该集合的数值之和:
data_set = [2,4,6,8,10]
sum=30
相关知识
本关可以利用range()、list()、sum()等函数方法来实现我们的目标。
range()函数
Python 提供了range()函数,能够用来生成一系列连续增加的数字。其基本使用语法有如下三种:
range(lower_limit,upper_limit,step)
其中:
lower_limit: 生成系列整数的下限整数,不填该参数则默认为从0开始,生成的整数从此数开始,包括该数;
upper_limit:生成系列整数的上限整数,必填参数,生成的整数要小于该上限;
step:在下限和上限之间生成系列整数之间的间隔步长,不填该参数则默认步长为1。
注意:range()函数的三个参数都只能为整数。如果range()函数中仅一个参数,则该参数表示upper_limit,如果仅两个参数,则分别表示lower_limit和upper_limit。
例如,要生成1~6之间步长为2的系列整数:
for i in range(1,6,2):
print(i)
输出结果:
1
3
5
基于range()函数创建数字列表
我们可以通过range()函数,利用 Python 列表提供的append()插入功能创建一个列表。例如,我们要创建一个包含10个0~9整数的平方的列表:
声明一个列表变量
numbers = []
利用append()函数和range()函数向列表插入目标元素
for i in range(10):
number = i**2
numbers.append(number)
print(numbers)
输出结果:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
使用list()函数和range()函数创建数字列表
我们可以利用list()函数将range()生成的系列数字直接转为列表,这时range()函数的返回值将会作为list()函数的参数,输出为一个数字列表。其基本使用语法如下:
data_list = list(range(lower_limit,upper_limit,step))
其中:
list:列表函数的语法关键词;
range:函数语法关键词;
data_list:最终生成的列表变量。
例如,我们要生成并输出1~5的数字列表:
data_list = list(range(1,6))
print(data_list)
输出结果:
[1,2,3,4,5]
对数字列表进行简单的统计运算
Python 中有一些专门处理数字列表简单的统计运算的函数,利用这些函数可以轻松找到数字列表的最小值、最大值及进行总和等一系列统计运算。其基本语法如下:
min_value = min(data_list)
max_value = max(data_list)
sum_value = sum(data_list)
其中:
min:数字列表求最小值的语法关键字;
max:数字列表求最大值的语法关键字;
sum:数字列表求和的语法关键字。
具体使用示例如下:
numbers = [2,4,11,1,21,32,5,8]
print(‘The min number is’,min(numbers))
print(‘The max number is’,max(numbers))
print(‘The sum is’,sum(numbers))
输出结果:
The min number is 1
The max number is 32
The sum is 84
如果您想了解更多有关列表操作的相关知识,请参考:【美】 Eric Matthes 著《 Python 编程——从入门到实践》第三章。
编程任务是补全src/Step3/numbers_square.py文件的代码内容,实现如下功能:
step1:根据给定的下限数lower, 上限数upper以及步长step,利用range函数生成一个列表;
step2:计算该列表的长度;
step3:求该列表中的最大元素与最小元素之差。
本关的代码文件src/Step3/numbers_square.py的代码框架如下:
coding=utf-8
创建并读入range函数的相应参数
lower = int(input())
upper = int(input())
step = int(input())
请在此添加代码,实现编程要求
########## Begin ##########
########## End ##########
评测说明
本关的测试文件是src/Step3/numbers_square.py,测试过程如下:
平台自动编译并运行numbers_square.py,并以标准输入方式提供测试输入;
平台获取程序输出,并将其输出与预期输出对比。如果一致则测试通过,否则测试失败。
以下是平台对src/Step3/numbers_square.py的样例测试集:
测试输入:
25
90
4
预期输出:
17
64
# coding=utf-8
# 创建并读入range函数的相应参数
lower = int(input())
upper = int(input())
step = int(input())
# 请在此添加代码,实现编程要求
########## Begin ##########
my_list = []
for i in range(lower, upper, step):
my_list.append(i)
print(len(my_list))
print(max(my_list) - min(my_list))
########## End ##########