数字列表和其他列表类似,但是有一些函数可以使数字列表的操作更高效。我们创建一个包含10个数字的列表,看看能做哪些工作吧。
# Print out the first ten numbers. numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] for number in numbers: print(number)
range() 函数
普通的列表创建方式创建10个数是可以的,但是如果想创建大量的数字,这种方法就不合适了。range() 函数就是帮助我们生成大量数字的。如下所示:
# print the first ten number for number in range(1, 11): print(number)
range() 函数的参数中包含开始数字和结束数字。得到的数字列表中包含开始数字但不包含结束数字。同时你也可以添加一个 step 参数,告诉 range() 函数取数的间隔是多大。如下所示:
# Print the first ten odd numbers. for number in range(1,21,2): print(number)
如果你想让 range() 函数获得的数字转换为列表,可以使用 list() 函数转换。如下所示:
# create a list of the first ten numbers. numbers = list(range(1,11)) print(numbers)
这个方法是相当强大的。现在我们可以创建一个包含前一百万个数字的列表,就跟创建前10个数字的列表一样简单。如下所示:
# Store the first million numbers in a list numbers = list(range(1,1000001)) # Show the length of the list print("The list 'numbers' has " + str(len(numbers)) + " numbers in it.") # Show the last ten numbers. print("\nThe last ten numbers in the list are:") for number in numbers[-10:]: print(number)
min(), max() 和 sum() 函数
如标题所示,你可以将这三个函数用到数字列表中。min() 函数求列表中的最小值,max() 函数求最大值,sum() 函数计算列表中所有数字之和。如下所示:
ages = [23, 16, 14, 28, 19, 11, 38] youngest = min(ages) oldest = max(ages) total_years = sum(ages) print("Our youngest reader is " + str(youngest) + " years old.") print("Our oldest reader is " + str(oldest) + " years old.") print("Together, we have " + str(total_years) + " years worth of life experience.")
知识点补充:
range()函数
在python中可以使用range()函数来产生一系列数字
for w in range(1,11): print(w)
输出:
1 2 3 4 5 6 7 8 9 10 #注意:这里的到10就结束了,不包括11