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

python学习笔记(四)列表、元组、字符串及字典

时间:2016-07-31 17:46:17      阅读:277      评论:0      收藏:0      [点我收藏+]

标签:

1.列表及元组操作

1.1 列表

Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。

定义列表:

   1 >>> namelist = [‘cc‘,‘uu‘,‘tt‘,‘yy‘,‘nn‘]

变量namelist就是一个list。用len()函数可以获得list元素的个数:

  1 >>> print(len(namelist))

1.1.1 list取值

用索引来访问list中每一个位置的元素,记得索引是从0开始的:

 1 >>> print(namelist[0])
 2 cc
 3 >>> print(namelist[1])
 4 uu
 5 >>> print(namelist[2])
 6 tt
 7 >>> print(namelist[3])
 8 yy
 9 >>> print(namelist[4])
10 nn

当索引超出了范围时,Python会报一个IndexError错误,所以,要确保索引不要越界,记得最后一个元素的索引是len(namelist) - 1

如果要取最后一个元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素:

1 >>> print(namelist[-1])
2 nn

以此类推,可以获取倒数第二个、第三个:

1 >>> print(namelist[-2])
2 yy
3 >>> print(namelist[-3])
4 tt

1.1.2 新增

追加元素--append

list是一个可变的有序表,可追加元素到末尾

1 >>> namelist = [cc,tt,uu,yy]
2 >>> namelist.append(ll)
3 >>> print(namelist)

添加到指定位置--insert

1 >>> namelist.insert(1,kk)
2 >>> print(namelist)

1.1.3 删除

删除末尾元素--pop()

1 >>> namelist.pop()
2 >>> print(namelist)

删除指定元素--pop(i)

1 >>> namelist.pop()
2 >>> print(namelist)

删除列表

del(list)是直接删除整个列表,再次打印列表时会报:NameError: name ‘namelist‘ is not defined

1 >>> del(namelist)
2 >>> print(namelist)

删除指定元素--del

1 >>> del(namelist[0])
2 >>> print(namelist) 

删除指定元素--remove

1 >>> remove.namelist(cc)
2 >>> print(namelist) 

1.1.4 修改

要把某个元素替换成别的元素,可以直接赋值给对应的索引位置:

1 >>> namelist[1] = rr
2 >>> print(namelist)

1.1.5 切片

取多个元素就需要用到切片; 

切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割。记住:数是可选的,而冒号是必须的。

切片操作符中的第一个数(冒号之前)表示切片开始的位置第二个数(冒号之后)表示切片到哪里结束,第三个数(冒号之后)表示切片间隔数。如果不指定第一个数,Python就从序列首开始。如果没有指定第二个数,则Python会停止在序列尾。注意,返回的序列从开始位置开始 ,刚好在结束位置之前结束。即开始位置是包含在序列切片中的,而结束位置被排斥在切片外。----顾头不顾尾

 1 >>> namelist = [cc,tt,uu,yy]
 2 >>> print(namelist[1:3])#取下标1到3之间的值,包含1,不包含3
 3 [tt, uu]
 4 >>> print(namelist[0:3])#取下标0到3之间的值,包含0,不包含3
 5 [cc,tt,uu]
 6 >>> print(namelist[:3])#如果是0开头,可以省略0,同上句
 7 [cc,tt,uu]
 8 >>> print(namelist[0:])#想取最后一个,只能这么写
 9 [cc,tt,uu,yy]
10 >>> print(namelist[::2])#从头取到尾,每隔一个元素就取一个
11 [cc, uu]

也可以用负数做切片,负数用在从序列尾开始计算的位置

1 >>> print(namelist[0:-3])
2 [cc]

1.1.6 获取下标

可通过index查找元素,返回下标

1 >>> print(namelist.index(cc))
2 0

也可通过找到的下标获取元素值---忘记他吧!

1 >>> print(namelist[namelist.index(cc)])
2 cc

1.1.7 统计

1 >>> namelist = [ty,tuu,tu,ye,tu]
2 >>> print(namelist.count(tu))
3 2

 1.1.8 反转

1 >>> namelist = [ty,tuu,tu,ye]
2 >>> namelist.reverse()
3 >>> print(namelist)
4 [ye, tu, tuu, ty]

1.1.9 排序

按照ascii码表排序

>>> namelist = [ty,tuu,tu,ye]
>>> namelist.sort()
>>> print(namelist)
[tu, tuu, ty, ye]

1.1.10 扩展

extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

1 >>> namelist1 = [cc,tt,yy,uu]
2 >>> namelist2 = [ww,ee,bb]
3 >>> namelist1.extend(namelist2)
4 >>> print(namelist1)
5 [cc, tt, yy, uu, ww, ee, bb]

1.1.11 复制

python学习笔记(四)列表、元组、字符串及字典

标签:

原文地址:http://www.cnblogs.com/cocc/p/5723043.html

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