Python内置数据类型之List篇
2014-01-03 16:14
661 查看
List的定义:
List是一个有序的集合,这点不同于Dictionary(Dictionary是无序的)。
(1)索引和切片
索引有正负之分,正索引下标从0开始,负索引下标从-1开始。比如:
通过两个索引得到List的一个子集,我们称之为切片。
我们可以看出:1)区间是左闭右开的;
2)不管两个索引的正负,只需要保证在List中第一个索引是在第二个索引的左边,得到的子集就不会是空的。
切片的简写,如果缺失第一个索引,那默认是从0开始;如果缺失第二个索引,那默认是直到List的最后一个元素(最后一个元素是算在内的,我们可以认为此时是一个无穷大的值);如果两个索引都缺失,这将包括 list 的所有元素,但是与原始的名为 li 的 List 不同,它是一个新 List,恰好拥有与li一样的全部元素。li[:] 是生成一个 list 完全拷贝的一个简写,就像是copy方法。
向List添加元素:
List中的元素值不一定互不相同,可以有相同的。
List 的两个方法 extend 和 append 看起来类似,但实际上完全不同。extend 接受一个参数,这个参数总是一个 List,并且把这个 List 中的每个元素添加到原 List 中。append 接受一个参数,这个参数可以是任何数据类型,并且简单地追加到 List 的尾部。
List的搜索:
如果一个值在List中出现多次,那么index返回的是这个值首次出现的下标。
List的删除:
同样,如果一个值多次出现,remove仅仅是删除首次出现的那个。
List的运算符:
li = ["one" , "two" , "three" , "four"]
List是一个有序的集合,这点不同于Dictionary(Dictionary是无序的)。
(1)索引和切片
索引有正负之分,正索引下标从0开始,负索引下标从-1开始。比如:
>>> li[0] 'one' >>> li[3] 'four' >>> li[-1] 'four' >>> li[-4] 'one'
通过两个索引得到List的一个子集,我们称之为切片。
>>> li[-1:-4] [] >>> li[-4:-1] ['one', 'two', 'three']
我们可以看出:1)区间是左闭右开的;
2)不管两个索引的正负,只需要保证在List中第一个索引是在第二个索引的左边,得到的子集就不会是空的。
切片的简写,如果缺失第一个索引,那默认是从0开始;如果缺失第二个索引,那默认是直到List的最后一个元素(最后一个元素是算在内的,我们可以认为此时是一个无穷大的值);如果两个索引都缺失,这将包括 list 的所有元素,但是与原始的名为 li 的 List 不同,它是一个新 List,恰好拥有与li一样的全部元素。li[:] 是生成一个 list 完全拷贝的一个简写,就像是copy方法。
向List添加元素:
>>> li.append("five"); >>> li ['one', 'two', 'three', 'four', 'five'] >>> li.insert(3,"six"); >>> li ['one', 'two', 'three', 'six', 'four', 'five'] >>> li.extend(["seven","eight"]); >>> li ['one', 'two', 'three', 'six', 'four', 'five', 'seven', 'eight']
List中的元素值不一定互不相同,可以有相同的。
>>> li.append(["nine","ten"]); >>> li ['one', 'two', 'three', 'six', 'four', 'five', 'seven', 'eight', ['nine', 'ten']]
List 的两个方法 extend 和 append 看起来类似,但实际上完全不同。extend 接受一个参数,这个参数总是一个 List,并且把这个 List 中的每个元素添加到原 List 中。append 接受一个参数,这个参数可以是任何数据类型,并且简单地追加到 List 的尾部。
List的搜索:
>>> "one" in li True >>> li.index("one"); 0 >>> li.index("two"); 1
如果一个值在List中出现多次,那么index返回的是这个值首次出现的下标。
List的删除:
>>> li.remove("one"); >>> li ['two', 'three', 'six', 'four', 'five', 'seven', 'eight', ['nine', 'ten']] >>> li.pop(); ['nine', 'ten'] >>> li ['two', 'three', 'six', 'four', 'five', 'seven', 'eight']
同样,如果一个值多次出现,remove仅仅是删除首次出现的那个。
List的运算符:
>>> li += ["eleven"]; >>> li ['two', 'three', 'six', 'four', 'five', 'seven', 'eight', 'eleven'] >>> li = [1,2]*3; >>> li [1, 2, 1, 2, 1, 2]
相关文章推荐
- Python核心数据类型(内置对象)—— 列表(list)
- Python中内置数据类型list,tuple,dict,set的区别和用法
- Python内置数据类型之list
- Python基础语法之内置的数据类型list和tuple
- Python中内置数据类型list,tuple,dict,set的区别和用法
- Python中内置数据类型list,tuple,dict,set的区别和用法
- Python中内置数据类型list,tuple,dict,set的区别和用法
- Python内置的数据类型--list,tuple
- PYTHON内置数据类型( list ,tuple ,dict,set)
- python内置数据类型:list,tuple,dict比较
- Python中内置数据类型list,tuple,dict,set的区别和用法
- Python中内置数据类型list,tuple,dict,set的区别和用法
- python3 第十二章 - 数据类型之List(列表)
- Python的内置数据类型
- python的组合数据类型及其内置方法说明
- python数据类型------list(列表)
- Python内置数据类型
- python 数据类型dataframe、ndarray、list、dict、series之间的转换
- python基础教程之基本内置数据类型介绍
- python数据类型dict、list、str、tuple互换方法