Python入门之列表操作(2)

  • 切片:python中列表的部分元素,被称之为切片。

>>> Hogwarts=['glrffindor','hufflepuff','ravenclaw','slytherin']
>>> Hogwarts
['glrffindor', 'hufflepuff', 'ravenclaw', 'slytherin']
>>> Hogwarts[0:2]
['glrffindor', 'hufflepuff']

从头开始检索到截止, 从起始索引检索到尾。

>>> Hogwarts[2:]
['ravenclaw', 'slytherin']
>>> Hogwarts[:3]
['glrffindor', 'hufflepuff', 'ravenclaw']
>>> Hogwarts[-2:]
['ravenclaw', 'slytherin']

########################### 

>>> for x in Hogwarts[:2]:
	print(x)

glrffindor
hufflepuff

切片可将数据分批处理。

  • 复制列表

>>> Hogwarts_copy=Hogwarts[:]
>>> Hogwarts_copy.append('sorting hat')
>>> Hogwarts_copy
['glrffindor', 'hufflepuff', 'ravenclaw', 'slytherin', 'sorting hat']
>>> Hogwarts
['glrffindor', 'hufflepuff', 'ravenclaw', 'slytherin']


#########################
>>> Hogwarts_2=Hogwarts
>>> Hogwarts_2.append('Dumbledor')
>>> Hogwarts_2
['glrffindor', 'hufflepuff', 'ravenclaw', 'slytherin', 'Dumbledor']
>>> Hogwarts
['glrffindor', 'hufflepuff', 'ravenclaw', 'slytherin', 'Dumbledor']

如果用切片创建全新的列表,即是复制整个列表。可获得两个不同的列表。

如果没有使用切片的话,只是简单的赋值,就不能获得两个列表。

如上例中 Hogwarts_copy 和 Hogwarts 是两个不同的列表,我们向其加入新元素,它们之间并不相互影响。

然而 Hogwarts_2 却是Hogwarts的别名了... 其实就是一个列表。

 

你可能感兴趣的:(Python)