Python笔记——基本数据结构:列表、元组及字典

来源:互联网 发布:mac系统做淘宝 编辑:程序博客网 时间:2024/05/27 02:30

本文是转载文章
转载自:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx
一、列表
一组有序项目的集合。可变的数据类型【可进行增删改查】
列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔。
列表中可以包含任何数据类型,也可包含另一个列表
列表可通过序号访问其中成员

常用列表操作:
list.append()追加成员,成员数据
list.pop()删除成员,删除第i个成员
list.count(x)计算列表中参数x出现的次数
list.remove()删除列表中的成员,直接删除成员i
list.extend(L)向列表中追加另一个列表L
list.reverse()将列表中成员的顺序颠倒
list.index(x)获得参数x在列表中的位置
list.sort()将列表中的成员排序
list.insert()向列表中插入数据insert(a,b)向列表中插入数据

可通过
help(list) 查看方法详情

这里写代码片print("-------list operations------")  #列表操作  l = [1,2,3,4,5]  l2 = [7,8,9]  print(l)  #获得列表长度  length = len(l)  print(length)  #追加一个元素,在列表最后一位  l.append(6)  print(l)  #向列表中追加另一个列表  l.extend(l2)  print(l)  #插入一个元素,在位置a  l.insert(0,0)  print(l)  #将列表顺序颠倒  l.reverse()  print(l)  #排序,从小到大  l.sort()  print(l)  #统计某个元素出现的次数  c = l.count(0)  print(c)  #查找某个参数在列表中的位置,未命中则抛异常  i = l.index(1)  print(i)  #删除某个位置的成员  l.pop(0)  print(l)  l.append(1)  #直接删除某个值的成员,若有多个,删除第一个  l.remove(1)  print(l)  

#列表操作补充--切片操作  example = [0,1,2,3,4,5,6,7,8,9]  #打印某一区间 左闭右开  print(example[4:8])  #想包含最后一个  print(example[4:])  #包含首个  print(example[:8])  #所有的  print(example[:])  #第三个参数为步长  print(example[1:8:2])  #倒序输出  print(example[::-1])  #列表合并  a = [1,2,3]  b = [4,5,6]  print(a+b)  #替换  ex = [1,2,3,4,5,6]  ex[4:]=[9,8,7]  print(ex)#将56换为987  #插入  ex[1:1] = [0,0,0]  print(ex)  #删除  del ex[0:2]  print(ex)  #或者  ex[6:]=[]  print(ex)  #比较  one = [1,2,3]  two = [1,2,3]  print(one == two)#true  print(one is two)#false  #列表操作补充——字符串也是列表  str = "abcdefg"  print(str[0])  #将一个字符串转为字符数组  print(list(str))  #字符串  s = "abcdefg"  #判断是否包含  print('a' in s)  #函数和模块  import math  #将一个变量指向一个函数  se = math.sqrt  print(se(81))  

这里写图片描述

二、元组
不可变序列
元组是以圆括号“()”包围的数据集合,不同成员以“,”分隔
与列表不同:元组中数据一旦确立就不能改变

通过下标进行访问

声明:
L=(1,2,3)
含0个元素的元组: L = ()
含1个元素的元组:L=(1,) 注意有逗号

#元组操作  #声明  o =('a','b','c',('d1','d2'))  o1 = ()  o2 = (1,)  #访问  print(o[0])  print(o[3][0])  #用于打印语句  age = 22  name = 'tom'  print("%s is %d years old"%(name,age))  

这里写图片描述

三、字典
键值对的集合(map)
字典是以大括号“{}”包围的数据集合
与列表区别:字典是无序的,在字典中通过键来访问成员。
字典是可变的,可以包含任何其他类型

声明:
M={k1:v1,k2:v2}
访问 M[k1]将得到v1

常用字典操作:
dic.clear()清空字典
dic.keys()获得键的列表
dic.values()获得值的列表
dic.copy()复制字典
dic.pop(k)删除键k
dic.get(k)获得键k的值
dic.update()更新成员,若成员不存在,相当于加入
dic.items()获得由键和值组成的列表
dic.popitem
可以通过
help(dict) 查看详情

#字典操作  m = {'a':1,'b':2,'c':3}  print(m)  #读取某一个_通过key  print(m['a'])  #读取某一个,通过get方法  print(m.get('b'))  #复制字典  m2 = m.copy()  print(m2)  #获取所有键的列表  print( m.keys() )  #获取所有值的列表  print( m.values() )  #获取所有键值对元组组成的列表  print( m.items() )  #更新成员,当对应键值不存在时,相当于加入  m.update({'d':4})  print(m)  #删除某个成员  m.pop('a')  print(m)  

这里写图片描述

四、序列的索引和切片
列表、元组和字符串都是序列
序列的两个主要特点是索引操作符和切片操作符。
索引操作符让我们可以从序列中抓取一个特定项目。即下标操作,用方括号和数字抓取某个位置的项目,L[0]抓取第一个元素,L[-1]抓取最后一个元素
切片操作符让我们能够获取序列的一个切片,即一部分序列。方括号加一对可选数字,切出某个子片L[1:3] 返回1-2的子片,L[2:]从2开始到最后,L[:]整个

0 0