码迷,mamicode.com
首页 > 编程语言 > 详细

【Python】切片

时间:2017-11-04 00:19:53      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:副本   add   back   get   ble   切片   new   nan   tom   

处理Python的部分元素,称之为切片。

创建切片

指定要是用的第一个元素和最后一个元素的索引,与range()函数一样,Python在到达你指定的第二个索引前面的元素后停止。

先定义一个列表vegetables

vegetables = [tomato,bean,potato,onion,radish]

取出第1~3个元素

print(vegetables[0:3])

取出第2~4个元素

print(vegetables[1:4])

取出前4个元素

print(vegetables[:4])

取出第2个元素后的所有元素(包含第2个)

print(vegetables[2:])

取出最后三个元素

print(vegetables[-3:])

复制列表

要复制切片,可创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引[:],这让python创建一个始于第一个元素,终止于最后一个元素的切片,即复制整个列表。

fruits = [aplle,pear,lemon,peach]
fruits_copy = fruits[:]
print(fruitsfoot_copy)

可能从上述案例中我们还没办法看出是有2个列表,下面整个例子可以更好的说明

fruits = [aplle,pear,lemon,peach]
fruits_copy = fruits[:]

fruits.append(grape)
fruits_copy.append(banana)

print(fruits)
print(fruits_copy)

打印结果:

[‘aplle‘, ‘pear‘, ‘lemon‘, ‘peach‘, ‘grape‘]
[‘aplle‘, ‘pear‘, ‘lemon‘, ‘peach‘, ‘banana‘]

这就说明了确实是复制了列表。

以下是一个错误的案例

fruits = [aplle,pear,lemon,peach]
fruits_copy = fruits

fruits.append(grape)
fruits_copy.append(banana)

print(fruits)
print(fruits_copy)

打印结果:

[‘aplle‘, ‘pear‘, ‘lemon‘, ‘peach‘, ‘grape‘, ‘banana‘]
[‘aplle‘, ‘pear‘, ‘lemon‘, ‘peach‘, ‘grape‘, ‘banana‘]

这里将fruits赋给fruits_copy,而不是将fruits的副本存储到fruits_copy.

【Python】切片

标签:副本   add   back   get   ble   切片   new   nan   tom   

原文地址:http://www.cnblogs.com/OliverQin/p/7780803.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!