自学Python笔记-创建数字列表、使用列表的一部分、元组

it2023-03-06  78

4.3创建数字列表

使用函数 range() 

函数range能让你轻松地生成一系列数字

一般格式为: range(start,end,step)

-start 指开始的数字(包含在列表)

-end 指结束的数字(不包含在列表内)

-step 指步长

使用 range 创建数字列表

要创建数字列表,可使用函数list()将range()结果直接转化为列表。如果将range作为list()的参数,输出将为一个数字列表。

不指定步长时:

number = list(range(1, 6)) print(number)

结果:[1, 2, 3, 4, 5]

指定步长时:

number2 = list(range(1, 10, 2)) print(number2)

结果:[1, 3, 5, 7, 9]

使用函数range几乎能创建任何需要的数字集,例如,创建一个列表,其中包含前十个整数的平方。两个星号(**)表示乘方运算

代码:

squares = [] for value in range(1, 11): square = value**2 squares.append(square) print(squares)

 

4.3.3对数字列表执行简单的统计计算

有几个专门处理数字列表的函数。例如:数字列表的最大值,最小值,和总和。

min()求最小值

max()求最大值

sum()求和

4.3.4列表解析

前面介绍的生成squares的方法包含了三四行代码,而列表解析让你只需编写一行代码就可以生成上述列表。

列表解析将for循环和创建新元素的代码合并成一行,并且自动附带新元素。

squares = [value**2 for value in range(1, 11)] print(squares)

在阅读别人的代码时,有可能会碰到这样的代码,因此要了解一下。

 

 

动手试一试

4-3数到20

for number3 in range(1, 21): print(number3)

4-4一百万

number4 = [value for value in range(1, 1000001)] print(number4)

 

4-5计算1~1000000的总和

number4 = [value for value in range(1, 1000001)] print(sum(number4))

4-6奇数

for value in range(1, 20, 2): print(value)

4-7三的倍数

number = [] for value in range(3, 30): if value % 3 == 0: number.append(value) print(number)

 

4-8立方

number1 = [] for value in range(1, 11): number1.append(value**3) print(number1)

4-9立方解析

number2 = [value**3 for value in range(1, 11)] print(number2)

 

4.4使用列表的一部分

在本章,将学习如何处理列表部分元素---Python称之为切片

4.4.1切片

要创建切片,可指定要使用的第一个元素的索引和最后一个元素的索引加1。

players = ['hyk', 'qwe', 'ert', 'sdf', 'fax']

print(players[1:4])      打印列表中2~4的元素

print(players[:3])        打印列表从头开始的三个元素

print(players[3:])        打印列表从第四个元素开始到列表结束

print(players[-3:])       打印列表最后的三个元素

4.4.2遍历切片

如果要遍历列表的部分元素,可在for循环中使用切片。

4.4.3复制列表

要在使用切片的情况下,来复制列表。

players1 = ['hyk', 'qwe', 'ert', 'sdf', 'fax']

players2=players1[:]

 

动手试一试

4-10切片

number1 = [] for value in range(1, 11): number1.append(value**3) print('The first three items in the list are :' + str(number1[:3])) print('Three items from the middle of the list are :' + str(number1[2:5])) print('The last three items in the list are :' + str(number1[-3:]))

4-11你的比萨和我的比萨

pizza_names = ['菠萝', '芝士', '榴莲'] friend_pizzas = pizza_names[:] pizza_names.append('苹果') friend_pizzas.append('香蕉') for pizza_name in pizza_names: print("I like " + pizza_name + " pizza") for friend_pizza in friend_pizzas: print("He likes " + friend_pizza + " pizza")

 

4.5元组

Python将不能修改的值称为不可变的,而不可变的列表称为元组。

元组看起来犹如列表,但使用圆括号而不是方括号来标识。

定义元组后,就可以使用索引来访问其元素,跟列表一样。

像列表一样,可以使用for循环来遍历元组中的所有值。

虽然不能修改元组的元素,但可以给储存元组的变量赋值。

相比于列表,元组是更简单的数据结构,如果需要存储的一组值在程序的整个生命周期内部不变,可使用元组。

动手试一试

4-13自助餐

names = ('菠萝', '芝士', '榴莲', '苹果', '香蕉') for name in names: print("- " + name) names = ('菠萝', '芝士', '榴莲', '柿子', '西瓜') print("这是我们的新菜单:") for name in names: print("- " + name)

 

最新回复(0)