本文标识 : P00010
本文编辑 : 采药
编程工具 : Python
阅读时长 : 3分钟
前言
列表非常适合存储数字集合,所以本章我们就来看下range()函数来创建列表的操作。
range()函数for value in range(1,5):
print(value)
这段代码,是打印范围[1,5)的数字,运行结果如下:1
2
3
4
如使用range(),输出结果不符合预期,可以尝试指定的值加1或减1.
创建列表
创建数字列表时,可以直接将range()函数的结果,使用list()转换为列表:number = list(range(1,6))
print(number)
结果如下:[1, 2, 3, 4, 5]
使用range()函数时,还可以指定步长,比如打印1-10的偶数:even_numbers = list(range(2,11,2))
print(even_numbers)
结果如下:[2, 4, 6, 8, 10]
使用range()几乎能够创建出任何需要的数字集,比如创建一个1-10的整数的平方。(**代表乘方运算)squares=[]
for value in range(1,11):
square = value**2
squares.append(square)
print(squares)
首先我们创建了一个空列表,然后使用range()函数,遍历了1-10的整数,在循环中,我们计算了每一个整数的平方,然后储存在了变量square中,再将该值添加到列表squares中,循环结束后,我们打印列表squares:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
为了让代码更简洁,我们可以不使用临时变量square:squares=[]
for value in range(1,11):
squares.append(value**2)
print(squares)
结果如下:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
对数字列表执行统计
有几个专门用户处理数字列表的python函数,可以轻松的找到列表数字中的最大值,最小值以及总和:list=list(range(1,11))
list列表是一个包含1-10的数字列表。
求最大值:>>> max(list)
10
求最小值>>> min(list)
1
求和>>> sum(list)
55
列表解析式
在上面例子中,我们生成一个squares列表,用了3、4行代码,而使用列表解析,我们只需要一行代码就完成了整个操作,编写更简洁。squares = [values**2 for value in range(1,11)]
print(squares)
运行结果如下:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
如使用这种语法,首先要指定一个描述性的列表名,比如squares,然后指定左方括号,定义一个表达式,用以生成想要存储的列表中的值。上述示例中,表达式为value**2,用以计算平方值,接下来编写一个for循环,用于提供表达式需要的值,再加上右方括号