列表:shoplist = ['apple', 'mango', 'carrot', 'banana']
字典:di = {'a':123,'b':'something'}
集合:jihe = {'apple','pear','apple'}
元组: t = 123,456,'hello'

1.列表--------------------------------------------------------------------------------------
    空列表:a=[]
    函数方法:a.append(3)       >>>[3]    
          a.extend([3,4,5])       >>>[3,3,4,5]    添加一个列表序列
          a.insert(1,'hello')        >>>[3,'hello',3,4,5]
          a.remove(3)             >>>['hello',3,4,5] 删除第一个出现的3,没有3则报错
          a.pop()              >>>['hello',3,4]
          a.pop(0)              >>>[3,4]
          a.index(4)          >>>1    返回出现的第一个4的下标
          a.count(3)          >>>1    列表中元素3的个数
          a.sort        >>>[3,4]    排序
          a.reverse()        >>>[4,3]    反序
    删除元素的方法
        a.remove(3)    通过值删除元素,删除第一个为参数值得元素
        a.pop()       通过下标删除元素,默认删除列表最后一个值,带参数则删除下标为参数值的元素
        del a[0]       通过下标删除元素,
            del a[2:4] 删除a表下标为2,3的元素
        del a[:]   删除a列表所有元素
        del a       删除列表
    列表推导式:
        vec = [2,4,6]    
         [3*x for x in vec if x<6]    >>>[6,12]    3*2,3*4
        vec2 = [1,2,3]
        [x*y for x in vec for y in vec2]    >>>[2,4,6,4,8,12,6,12,18]
    嵌套列表推导式:
        mat = [
        [1,2,3],
        [4,5,6],
        [7,8,9]
        ]
        print ([[row[i] for row in mat] for i in [0,1,2]])    
        >>>[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
    思考:list (zip(mat)) 和 list (zip(*mat))结果会有什么不同

2.元组---------------------------------------------------------------------------------------------------
    空元组:t = ()
    元组赋值: t = (123,345)
           t[0]         >>>123

3.字典---------------------------------------------------------------------------------------------------------   
    d = {'Jack':'jack@mail.com','Tom':'Tom@main.com'}
    d['Jack']            >>>'jack@mail.com
    d['Jim'] = 'Jim@sin.com'    >>>{'Jim': 'Jim@sin.com', 'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}

  del d['Jim']    >>>{'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}
    list(d.keys())    将返回一个字典中所有关键字组成的无序列表
    sorted(d.keys()) 将返回一个字典中所有关键字组成的排序列表
    dict()    构造函数可以直接从key-value对中创建字典
    dict([('Tim',123),('Tiny',234)])    >>>{'Tiny': 234, 'Tim': 123}    
    推导式创建字典:
        {d2:d2+'@main.com' for d2 in list(d.keys())}
            >>>{'Jack': 'Jack@main.com', 'Tom': 'Tom@main.com'}
    练习:循环输出字典中的键值对:
        for name,email in d.items():
            print(name,email)

4.集合--------------------------------------------------------------------------------------------

集合是一个无序不重复元素的集。基本功能包括关系测试和消除重复元素。
    空集合:A = set() ※想要创建空集合,必须使用set()
    演示:
    basket = {'apple','orange','apple'}    >>>{'orange', 'apple'}    注意重复的元素只显示一个?
    'apple' in basket              >>>True
    'pear' in basket            >>>False

集合的数学运算:    
        a = set('ababcdabca')        >>>{'c', 'b', 'a', 'd'}
        b = {'a','b','m'}            >>>{'b', 'a', 'm'}
        a - b        >>>{'c', 'd'}
        b - a        >>>{'m'}
        a | b        >>>{'c', 'd', 'b', 'a', 'm'}
        a & b        >>>{'a','b'}
        a ^ b        >>>{'c','d','m'}
    集合推导式:
       {x for x in a if x not in 'ab'}    >>>{'c','d'}

Python数据结构:列表、字典、元组、集合的更多相关文章

  1. python之字符串,列表,字典,元组,集合内置方法总结

    目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...

  2. Python【列表 字典 元组】

    列表列表用中括号[ ]把各种数据框起来,每一个数据叫作“元素”.每个元素之间都要用英文逗号隔开各种类型的数据(整数/浮点数/字符串)————————————————————————————从列表提取单 ...

  3. python中 列表 字典 元组的了解

    #######列表######1.列表的特性 server = [['http'],['ssh'],['ftp']] server1 = [['mysql'],['firewalld']]  连接  ...

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

    转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx Python基本数据结构:列表,元组及字典 一.列表 一组有序项 ...

  5. Python中列表,元组,字典,集合的区别

    参考文档https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是p ...

  6. [转]Python 的列表解析式,集合解析式,字典解析式

    Python 的列表解析式,集合解析式,字典解析式 这三种都是 python 里面的语法糖. 语法糖,Syntactic Sugar,就是为了写程序时候少出错,发明的一些简便的方法,但不影响这个语法的 ...

  7. Python基础-列表、元组、字典、字符串

    Python基础-列表.元组.字典.字符串   多维数组 nums1 = [1,2,3] #一维数组 nums2 = [1,2,3,[4,56]] #二维数组 nums3 = [1,2,3,4,['a ...

  8. python字符串/列表/字典互相转换

    python字符串/列表/字典互相转换 目录 字符串与列表 字符串与字典 列表与字典 字符串与列表 字符串转列表 1.整体转换 str1 = 'hello world' print(str1.spli ...

  9. Python基础------列表,元组的调用方法

    Python基础------列表,元组的调用方法@@@ 一. 列表 Python中的列表和歌曲列表类似,也是由一系列的按特定顺序排列的元素组成的,在内容上,可以将整数,实数,字符串,列表,元组等任何类 ...

  10. Python中的字典与集合

    今天我们来讲一讲python中的字典与集合 Dictionary:字典 Set:集合 字典的语法: Dictionary字典(键值对) 语法: dictionary = {key:value,key: ...

随机推荐

  1. c #include "" 和 <>

    <>先去系统目录中找头文件,如果没有在到当前目录下找.所以像标准的头文件 stdio.h.stdlib.h等用这个方法. 而""首先在当前目录下寻找,如果找不到,再到系 ...

  2. Nginx(四)-- 配置文件之location

    1.location的作用 location主要做定位功能,根据uri来进行不同的定位. 2.location的语法 location [=|~|~*|^~] /uri/ { …} = 开头表示精确匹 ...

  3. ZooKeeper(四)-- 第三方客户端 ZkClient的使用

    前言 zkClient主要做了两件事情: 一件是在session loss和session expire时自动创建新的ZooKeeper实例进行重连. 另一件是将一次性watcher包装为持久watc ...

  4. InstallShield程序打包图解

    InstallShield程序打包图解     VS2012中打包工具被看做程序集,在使用时和程序集一样被创建到程序解决方案下.需要我们做的是添加项目即可.但是对于初次使用的朋友来说,我们需要根据提示 ...

  5. poj_3461 kmp

    题目大意 给定两个字符串S1, S2,求S1中包含多少个S2串.其中S1长度最大为 1000000, S2长度最大为10000. 题目分析 典型的字符串匹配问题,直接匹配显然会超时,考虑使用kmp算法 ...

  6. 设计模式-UML类图基础

    设计模式之序-UML类图那点事儿 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐的书 ...

  7. jQuery数据缓存

    jQuery引入数据缓存机制的原因: 1.储存更DOM节点相关的数据.事件.动画等信息 2.用一种低耦合的方式让DOM节点和数据联系起来 实现原理: 1.jQuery内部创建cache对象 2.为需要 ...

  8. Android - 获取SD卡的内存空间大小

    获取SD卡的内存空间大小 //获得SD卡空间的信息 File path=Environment.getExternalStorageDirectory(); StatFs statFs=new Sta ...

  9. 微信小程序 --- app.json文件

    app.json文件用于配置项目:用于对小程序进行全局设置: pages:定义小程序的路由.(凡是不在这个配置里面的东西,都无法打开) (特别注意:结尾不能有 逗号 否则会出错) window:定义小 ...

  10. zeptojs使用及介绍,手机端为什么一定要用zeptojs?

    zepto是和jQuery和类似的框架,由于jQuery内置了很多解决浏览器兼容性的代码,导致jQuery过于臃肿,对于移动端来说,不需要太过于考虑浏览器的兼容,所以就诞生zeptojs. 总的来说: ...