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 的两个方法 extendappend 看起来类似,但实际上完全不同。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篇的更多相关文章

  1. Python内置数据类型之Dictionary篇

    1.查看函数XXX的doc string. Python的函数是有属性的,doc string便是函数的属性.所以查看函数XXX的属性的方法是模块名.XXX.__doc__ 2.模块的属性 每个模块都 ...

  2. Python内置数据类型之Tuple篇

    Tuple 是不可变的 list.一旦创建了一个 tuple,就不可以改变它.这个有点像C++中的const修饰的变量.下面这段话摘自Dive Into Python: Tuple 比 list 操作 ...

  3. Python内置数据类型总结

    python的核心数据类型:(很多语言之提供了数字,字符串,文件数据类型,其他形式的数据类型都以标准库的形式表示 也就是用之前需要import ) ,但是python有很多都是内置的,不需要impor ...

  4. python 内置数据类型之数字

    目录: 1.2. 数字 1.2.1. 数字类型 1.2.2. 浮点数 1.2.3. 进制记数 1.2.4. 设置小数精度 1.2.5. 分数 1.2.6. 除法 1.2 数字   1.2.1 数字类型 ...

  5. python内置数据类型-字典和列表的排序 python BIT sort——dict and list

    python中字典按键或键值排序(我转!)   一.字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序. Py ...

  6. python 内置数据类型之字符串

    1.3 字符串 字符串本身就是一个有序(从左至右)的字符的集合.是序列这种类型的一种,后面还要学习列表与元组. 在这一节中,需要了解字符串的定义,特殊字符,转义与抑制转义:字符串基本操作.格式化等. ...

  7. Python中内置数据类型list,tuple,dict,set的区别和用法

    Python中内置数据类型list,tuple,dict,set的区别和用法 Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, ...

  8. python计算非内置数据类型占用内存

    getsizeof的局限 python非内置数据类型的对象无法用sys.getsizeof()获得真实的大小,例: import networkx as nx import sys G = nx.Gr ...

  9. Python的四个内置数据类型list, tuple, dict, set

    Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set.这里对他们进行一个简明的总结. List ...

随机推荐

  1. HDU 2674 N!Again(数学思维水题)

    题目 //行开始看被吓一跳,那么大,没有头绪, //看了解题报告,发现这是一道大大大的水题,,,,,//2009 = 7 * 7 * 41//对2009分解,看它有哪些质因子,它最大的质因子是41,那 ...

  2. P==NP??

    注:基础知识见下方 下面是关于P==NP ???  一些讨论,挺好玩的. 1. 首先强调一下数学上还没有证明这个问题!但是我们看看其他角度来看这个问题. 其次,心理上来说,要是可以证明P==NP那么早 ...

  3. POJ 2549

    Sumsets Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8235   Accepted: 2260 Descripti ...

  4. 【蛙蛙推荐】Lucene.net试用

    [蛙蛙推荐]Lucene.net试用   [简介] lucene.net好多人都知道的吧,反正我是最近才好好的看了一下,别笑我拿历史当新闻哦,不太了解Lucence的朋友先听我说两句哦.Lucene的 ...

  5. 几点基于Web日志的Webshell检测思路

    http://www.open-open.com/lib/view/open1456751673359.html

  6. hdu 4739 Zhuge Liang's Mines

    一个简单的搜索题,唉…… 当时脑子抽了,没做出来啊…… 代码如下: #include<iostream> #include<stdio.h> #include<algor ...

  7. Axis2学习的第一天

    按照下面,分别建2个工程,一个client(客户端),一个server(服务端) 先实现服务端: 1.编写services.xml文件,该文件是放在aar文件里的\META-INF目录下的: < ...

  8. 【poj3243-Clever Y】高次同余方程-拓展BabyStepGiantStep

    http://poj.org/problem?id=3243 题意:给定X,Z,K,求一个最小的Y满足XY mod Z = K. 关于拓展BSGS的详细解释我写了一篇博文:http://www.cnb ...

  9. lintcode:完美平方

    题目 给一个正整数 n, 找到若干个完全平方数(比如1, 4, 9, ... )使得他们的和等于 n.你需要让平方数的个数最少. 样例 给出 n = 12, 返回 3 因为 12 = 4 + 4 + ...

  10. Android实现透明的颜色效果

    android Button或者ImageButton背景透明状态设置 设置Button或ImageButton的背景为透明或者半透明 半透明< Button android:backgroun ...