转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx

Python基本数据结构:列表,元组及字典

一、列表

一组有序项目的集合。可变的数据类型【可进行增删改查】

列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔。

列表中可以包含任何数据类型,也可包含另一个列表

列表可通过序号访问其中成员

常用列表操作:

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) 查看方法详情

  1. print("-------list operations------")
  2. #列表操作
  3. l = [1,2,3,4,5]
  4. l2 = [7,8,9]
  5. print(l)
  6. #获得列表长度
  7. length = len(l)
  8. print(length)
  9. #追加一个元素,在列表最后一位
  10. l.append(6)
  11. print(l)
  12. #向列表中追加另一个列表
  13. l.extend(l2)
  14. print(l)
  15. #插入一个元素,在位置a
  16. l.insert(0,0)
  17. print(l)
  18. #将列表顺序颠倒
  19. l.reverse()
  20. print(l)
  21. #排序,从小到大
  22. l.sort()
  23. print(l)
  24. #统计某个元素出现的次数
  25. c = l.count(0)
  26. print(c)
  27. #查找某个参数在列表中的位置,未命中则抛异常
  28. i = l.index(1)
  29. print(i)
  30. #删除某个位置的成员
  31. l.pop(0)
  32. print(l)
  33. l.append(1)
  34. #直接删除某个值的成员,若有多个,删除第一个
  35. l.remove(1)
  36. print(l)

结果:

列表补充:2011-4-17

  1. #列表操作补充--切片操作
  2. example = [0,1,2,3,4,5,6,7,8,9]
  3. #打印某一区间 左闭右开
  4. print(example[4:8])
  5. #想包含最后一个
  6. print(example[4:])
  7. #包含首个
  8. print(example[:8])
  9. #所有的
  10. print(example[:])
  11. #第三个参数为步长
  12. print(example[1:8:2])
  13. #倒序输出
  14. print(example[::-1])
  15. #列表合并
  16. a = [1,2,3]
  17. b = [4,5,6]
  18. print(a+b)
  19. #替换
  20. ex = [1,2,3,4,5,6]
  21. ex[4:]=[9,8,7]
  22. print(ex)#将56换为987
  23. #插入
  24. ex[1:1] = [0,0,0]
  25. print(ex)
  26. #删除
  27. del ex[0:2]
  28. print(ex)
  29. #或者
  30. ex[6:]=[]
  31. print(ex)
  32. #比较
  33. one = [1,2,3]
  34. two = [1,2,3]
  35. print(one == two)#true
  36. print(one is two)#false
  37. #列表操作补充——字符串也是列表
  38. str = "abcdefg"
  39. print(str[0])
  40. #将一个字符串转为字符数组
  41. print(list(str))
  42. #字符串
  43. s = "abcdefg"
  44. #判断是否包含
  45. print('a' in s)
  46. #函数和模块
  47. import math
  48. #将一个变量指向一个函数
  49. se = math.sqrt
  50. print(se(81))

结果:

二、元组

不可变序列

元组是以圆括号“()”包围的数据集合,不同成员以“,”分隔

与列表不同:元组中数据一旦确立就不能改变

通过下标进行访问

声明:

L=(1,2,3)

含0个元素的元组: L = ()

含1个元素的元组:L=(1,) 注意有逗号

  1. #元组操作
  2. #声明
  3. o =('a','b','c',('d1','d2'))
  4. o1 = ()
  5. o2 = (1,)
  6. #访问
  7. print(o[0])
  8. print(o[3][0])
  9. #用于打印语句
  10. age = 22
  11. name = 'tom'
  12. 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) 查看详情

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

四、序列的索引和切片

列表、元组和字符串都是序列

序列的两个主要特点是索引操作符和切片操作符。

索引操作符让我们可以从序列中抓取一个特定项目。即下标操作,用方括号和数字抓取某个位置的项目,L[0]抓取第一个元素,L[-1]抓取最后一个元素

切片操作符让我们能够获取序列的一个切片,即一部分序列。方括号加一对可选数字,切出某个子片L[1:3] 返回1-2的子片,L[2:]从2开始到最后,L[:]整个

Python笔记——基本数据结构:列表、元组及字典的更多相关文章

  1. python笔记十(列表生成式、字典生成式、生成器、生成器的并行)

    一.列表生成式 列表生成式就是python设置的可以用来可以生成列表的. 如要生成一个0-9的列表我们可以通过以下代码实现: >>> list(range(10)) [0, 1, 2 ...

  2. python笔记(1)--序列(列表 元组 range)

    一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...

  3. Python—列表元组和字典

    Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...

  4. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

  5. python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍

    目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...

  6. python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍

    目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...

  7. Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作

    一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name  = "Jonathan&q ...

  8. Python基础5:列表 元祖 字典 集合

    [ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...

  9. Python基础5:列表 元祖 字典 集合 Json

    [ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...

随机推荐

  1. SQL2005:已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行.

    原文发布时间为:2008-08-04 -- 来源于本人的百度文章 [由搬家工具导入] 最近使用sql server2005,已经不止一次的发生了这样的错误.具体是怎么出来的我不清楚,其表现为:数据库中 ...

  2. css选择器浅谈

    css选择器有很多,种类的话总结起来有5种.即: id选择器,class选择器,elements选择器,级联选择器,相邻选择器. 前三个没什么好说的,分别是id,class和标签的选择,注意选中对象的 ...

  3. netsh配置Windows防火墙(advfirewall)

    有人可能会说,Windows防火墙有非常友好的用户界面,为什么要使用命令行界面来配置一个Windows防火墙?有 个人认为有一下原因(撇开有的人喜欢命令行不喜欢界面的 , o(∩_∩)o 哈哈) Fi ...

  4. 眉目传情之匠心独运的kfifo【转】

    转自:http://blog.csdn.net/chen19870707/article/details/39899743 权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 一 ...

  5. locust性能测试安装

    Locust简介 Locust是一款易于使用的分布式用户负载测试工具.它用于对网站(或其他系统)进行负载测试,并确定系统可以处理多少并发用户.这个想法是,在测试期间,一群蝗虫(Locust)会攻击你的 ...

  6. HTTP PUT方法和POST方法的区别

    这两个方法看起来都是讲一个资源附加到服务器端的请求,但其实是不一样的.一些狭窄的意见认为,POST方法用来创建资源,而PUT方法则用来更新资源.这个说法本身没有问题,但是并没有从根本上解释了二者的区别 ...

  7. AC日记——Count on a tree bzoj 2588

    Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权.其中lastans是上一个询问的答案,初始 ...

  8. 通过jQuery Ajax提交表单数据时同时上传附件

    1.使用场景:需要使用ajax提交表单,但是提交的表单里含有附件上传 2.代码实现方式: <!-- HTML代码 --> <form method="post" ...

  9. Codeforces 235 C

    题目大意 给定一个模板串, 再给出\(n\)个询问, 询问每一个串的循环串总共在原串中出现了多少次. 循环串: 比如说有\(str[] = \{ABCD\}\), 则其循环串有\(\{ABCD\}, ...

  10. XSY1036 [Apio2012]派遣

    题面 Description 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Master.除了 Master以外,每名忍者都有且仅有一个 ...