Python内置数据类型之List篇
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内置数据类型之Dictionary篇
1.查看函数XXX的doc string. Python的函数是有属性的,doc string便是函数的属性.所以查看函数XXX的属性的方法是模块名.XXX.__doc__ 2.模块的属性 每个模块都 ...
- Python内置数据类型之Tuple篇
Tuple 是不可变的 list.一旦创建了一个 tuple,就不可以改变它.这个有点像C++中的const修饰的变量.下面这段话摘自Dive Into Python: Tuple 比 list 操作 ...
- Python内置数据类型总结
python的核心数据类型:(很多语言之提供了数字,字符串,文件数据类型,其他形式的数据类型都以标准库的形式表示 也就是用之前需要import ) ,但是python有很多都是内置的,不需要impor ...
- 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 数字类型 ...
- python内置数据类型-字典和列表的排序 python BIT sort——dict and list
python中字典按键或键值排序(我转!) 一.字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序. Py ...
- python 内置数据类型之字符串
1.3 字符串 字符串本身就是一个有序(从左至右)的字符的集合.是序列这种类型的一种,后面还要学习列表与元组. 在这一节中,需要了解字符串的定义,特殊字符,转义与抑制转义:字符串基本操作.格式化等. ...
- Python中内置数据类型list,tuple,dict,set的区别和用法
Python中内置数据类型list,tuple,dict,set的区别和用法 Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, ...
- python计算非内置数据类型占用内存
getsizeof的局限 python非内置数据类型的对象无法用sys.getsizeof()获得真实的大小,例: import networkx as nx import sys G = nx.Gr ...
- Python的四个内置数据类型list, tuple, dict, set
Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set.这里对他们进行一个简明的总结. List ...
随机推荐
- Android屏幕适应详解(一)
一.关于布局适配 1.不要使用绝对布局 2.尽量使用match_parent 而不是fill_parent . 3.能够使用权重的地方尽量使用权重(android:layout_weight) 4.如 ...
- c#百分比
<div class="inner" style="width:@string.Format("{0:P1}", item.Maturitys) ...
- js 异步请求封装
1. function ajax(url, onsuccess) { var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ...
- yum downloadonly
有些时候集群中的机器无法联网,通过yum进行安装,这样就需要找一个相同内核的机器将rpm下载后再到相应的机器上进行安装,以解决这一问题. yum 有相应的工具完成这一任务. ...
- linux shell 命令学习(2) paste - merge lines of files
paste - merge lines of files 命令格式: paste [OPTION] ... [FILE] ... 说明: 输出每个文件的对应行组合而成的行,中间用tab分开,如果没有F ...
- Spring AOP 创建切面
增强被织入到目标类的所有方法中,但是如果需要有选择性的织入到目标类某些特定的方法中时,就需要使用切点进行目标连接点的定位.增强提供了连接点方位信息:如织入到方法前面.后面等,而切点进一步描述织 ...
- ftp下载显示进度
经常用到ftp get命令下载东西,但是遇到大的文件不知道是挂了还是在运行,要是能显示就好了,于是就有了下文... 注: 红色 字体是我敲击的命令 “#” 是注释语 [root@localhost s ...
- [转]Debian 安装与卸载包命令(APT&&DPKG)
转自:zhangjunhd 的BLOG 1.APT主要命令apt-cache search ------package 搜索包sudo apt-get install ------package 安 ...
- USACO Section 2.4: Fractions to Decimals
乍看题目感觉有难度,实际分析后其实是道简单题 /* ID: yingzho1 LANG: C++ TASK: fracdec */ #include <iostream> #include ...
- SGU 106 The equation 扩展欧几里得好题
扩展欧几里得的应用……见算法竞赛入门经典p.179 注意两点:1.解不等式的时候除负数变号 2.各种特殊情况的判断( a=0 && b=0 && c=0 ) ( a=0 ...