说说 Python 的数值列表

1 range() 函数

range() 函数能够生成一系列的数字:编程

for v in range(1,10):
    print(v)
复制代码

运行结果:bash

range() 函数会从咱们所指定的第一个值开始数, 直到到达所指定的第二个值后中止,但不会包含第二个值。这就是编程语言中的差一行为。app

2 建立数字列表

能够使用函数 list() 将 range() 函数的结果转换为列表:编程语言

nums=list(range(1,10))
print(nums)
复制代码

运行结果: 函数

使用函数 range() 时, 咱们还可指定步长 。 例如,下面的代码打印 1~10 内的奇数:ui

odd_nums=list(range(1,11,2))
print(odd_nums)
复制代码

在这个示例中, 函数 range() 从 1 开始数, 而后不断地加 2 ,因此运行结果为: spa

利用函数 range(),咱们可以建立任何须要的数字列表, 例如, 下面的代码建立了一个列表, 它包含前 10 个整数( 即 1~10 ) 的立方:3d

cubes=[]
for v in range(1,11):
    cube=v**3
    cubes.append(cube)
print(cubes)
复制代码

运行结果:code

由于逻辑清晰易懂,因此咱们能够去除临时变量 cube,让代码变得更简洁:cdn

cubes=[]
for v in range(1,11):
    cubes.append(v**3)
print(cubes)
复制代码

有时候, 使用临时变量会让代码更易读;而有的时候, 使用临时变量只会让代码无谓地变长。 咱们首先应该编写清晰易懂且能完成所需功能的代码; 等到代码审核时, 再转而考虑是否采用更高效的方法。

还有一种更简洁的写法,叫作列表解析。它会将 for 循环和建立新元素的代码合并为一行, 而且自动附加新元素。它的语法是, 首先指定一个描述性的列表名, 如 cubes; 而后, 指定一个左方括号, 并定义一个表达式, 用于生成你要存储到列表中的值(如 v**3) 。 接下来, 编写一个 for 循环, 用于给表达式提供值, 再加上右方括号 。 注意: 这里的 for 语句末尾没有冒号 。

cubes=[v**3 for v in range(1,11)]
print(cubes)
复制代码

运行结果:

3 统计计算

使用 Python 的统计函数,能够很快地找出数字列表的最大值、 最小值和总和:

nums=list(range(1,1000000))
print('最小值:'+str(min(nums))) 
print('最大值:'+str(max(nums))) 
print('总和:'+str(sum(nums))) 
复制代码

运行结果:

100 万个数求和,不到 1s 就算好啦O(∩_∩)O~

相关文章
相关标签/搜索