大家都知道,列表是Python中最重要的数据类型,所以这部分的内容比较多,之前我也有看这部分东西,但是没有上手编程,所以很生疏,强烈推荐<<python编程:从入门到实践>>,这本书很系统,适合作为入门书籍。
1、创建列表
这很简单,使用中括号[ ]就可以
names=['stark','alice','david','danny']
>>> print(names)
['stark', 'alice', 'david', 'danny']
创建一个空列表
number=[]
>>> print(number)
[]
2、 遍历列表
使用 for _ in list :
for name in names:
print(name)
stark
alice
david
danny
for 后面是一个标识符,可以随意起名字,但要符合标识符的要求
3、创建数值列表
这里我们要接触一个新的方法,range() 具体操作方法如下,我们打印一个从1到10 的平方
for num in range(1,11):
print(num**2)
1
4
9
16
25
36
49
64
81
100
range(1,11)表示从1到10的数,但不包括11,要特别注意
创建一个数值列表:
number=list(range(1,11))
>>> print(number)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
使用range()函数几乎可以创建任何需要的数字列表
可以使用max(),min(),sum()函数求得数字列表中的最大值,最小值和列表数字和
>>> sum(number)
55
>>> max(number)
10
>>> min(number)
1
4、列表解析
>>> square=[value**2 for value in range(1,11)]
>>> print(square)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
这部分其实也不难理解,相当于定义了一个从1-10的列表,然后遍历列表求解平方,然后打印结果
5、列表切片
用来处理列表的部分元素
>>> players = ['charles', 'martina', 'michael', 'florence', 'eli']
>>> players[0:3]
['charles', 'martina', 'michael']
打印players列表中前三个队员的名字,[ ]第一个数字代表起始,第二个数字表示截止,但不包括截止元素,列表切片的输出仍为列表
如果省略第一个数字,默认为起始元素,如下:
>>> players[:3]
['charles', 'martina', 'michael']
若要打印最后三个队员的名字,可以进行如下操作:
>>> players[2:]
['michael', 'florence', 'eli']
或者
>>> players[-3:]
['michael', 'florence', 'eli']
复制列表:
>>> players=['charles', 'martina', 'michael', 'florence', 'eli']
>>> team_players=players[:]
>>> print(team_players)
['charles', 'martina', 'michael', 'florence', 'eli']
>>> players.append('alice')
>>> print(players)
['charles', 'martina', 'michael', 'florence', 'eli', 'alice']
>>> print(team_players)
['charles', 'martina', 'michael', 'florence', 'eli']
我们建立了一个名为team_players的列表,它的元素与players中的一样,下面我们来看另一种操作
>>> team_players=players
>>> players.append('alice')
>>> print(players)
['charles', 'martina', 'michael', 'florence', 'eli', 'alice']
>>> print(team_players)
['charles', 'martina', 'michael', 'florence', 'eli', 'alice']
这样创建的一个与players相等的列表teamplayers,当players改变时,teamplayers也会改变,然而上面使用[:]创建的列表,则不会发生一个改变另一个跟着改变的现象
6、元组
元组也是列表,但是它不可以改变,元组使用()创建
我们将一个人的身高和体重放在feature元组中,当我们尝试改变它的时候,会出现错误
>>> feature=(166,50)
>>> print(feature)
(166, 50)
>>> print(feature[0])
166
>>> feature[0]=170
Traceback (most recent call last):
File "<pyshell#90>", line 1, in <module>
feature[0]=170
TypeError: 'tuple' object does not support item assignment
>>>
虽然不可以改变元组的元素,但是可以给元组重新赋值
>>> feature=(170,55)
>>> print(feature[0])
170
关于列表这部分就总结这些啦,应该还有很多东西要学习,加油!