转载请注明出处: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. button 默认类型是submit

    “form表单里的按钮,明明是button而不是input type = submit,点击还是提交,如何让它不提交?” (这个问题被我遇到了,很坑爹的,知道了就不以为然了.) 因为 button 默 ...

  2. Python日志(logging)模块使用方法简介

    A logger is configured to have a log level. This log level describes the severity of the messages th ...

  3. LeetCode OJ--Search Insert Position

    https://oj.leetcode.com/problems/search-insert-position/ 数组有序,给一个数,看它是否在数组内,如果是则返回位置,如果不在则返回插入位置. 因为 ...

  4. CDN或负载均衡或WAF,后端服务器获取真实IP

    问题起因: 1. 后端PHP的$_SERVER["REMOTE_ADDR"]个别服务器获取不到真实IP 2. iptables 和 悬镜 等工具,设置IP黑名单不起作用 简单点说, ...

  5. js判断鼠标滑轮滚动方向并根据滚动的方向触发不同的事件

    <script> var scrollFunc = function (e) { var direct = 0; e = e || window.event; if (e.wheelDel ...

  6. Codeforces 622F The Sum of the k-th Powers

    Discription There are well-known formulas: , , . Also mathematicians found similar formulas for high ...

  7. 机器学习之SVM

    一.线性分类器: 首先给出一个非常非常简单的分类问题(线性可分),我们要用一条直线,将下图中黑色的点和白色的点分开,很显然,图上的这条直线就是我们要求的直线之一(可以有无数条这样的直线) 假如说,我们 ...

  8. PyTorch学习笔记之CBOW模型实践

    import torch from torch import nn, optim from torch.autograd import Variable import torch.nn.functio ...

  9. Maven转换成Eclipse/Idea/MyEclipse工程,以及配置Web工程

    Eclipse/MyEclipse: //Jar mvn eclipse:eclipse mvn eclipse:myeclipse //Web mvn eclipse:eclipse -Dwtpve ...

  10. CopyMemory Move使用笔记

    今天群里有人问函数使用问题,我就自己测试一下,顺便学习一下. uses math; procedure TForm2.Button1Click(Sender: TObject); type TTArr ...