Python中几种数据结构的整理,列表、字典、元组、集合

列表: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‘:‘[email protected]‘,‘Tom‘:‘[email protected]‘}
    d[‘Jack‘]            >>>‘[email protected]
    d[‘Jim‘] = ‘[email protected]‘    >>>{‘Jim‘: ‘[email protected]‘, ‘Jack‘: ‘[email protected]‘, ‘Tom‘: ‘[email protected]‘}

  del d[‘Jim‘]    >>>{‘Jack‘: ‘[email protected]‘, ‘Tom‘: ‘[email protected]‘}
    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‘: ‘[email protected]‘, ‘Tom‘: ‘[email protected]‘}
    练习:循环输出字典中的键值对:
        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‘}

时间: 2024-09-30 00:12:30

Python中几种数据结构的整理,列表、字典、元组、集合的相关文章

列表 字典 元组 集合

列表: 1.用途:记录多个值(同种属性) 2.定义方式:在[]内用逗号分隔开多个任意类型的值 类型转换 定义列表实际上是借用list()方法生成列表,可以将其他类型转化为列表,如字符串元组,字典集合 3.常用操作+内置的方法 1.按索引存取值(正向存取+反向存取):即可存也可以取 使用下标索引来访问列表中的值 2.切片()列表中的截取与字符串类似,按照索引 3.长度 使用len()方法获取列表长度,参数为列表 4.成员运算in和not in通过返回值判断元素是否在列表中, 5.追加&插入使用ap

列表,字典,元组,集合内置方法

列表类型内置方法 作用:多个女朋友/ 定义方式:[]内用逗号隔开多个任意数据类型的元素 friends_list = ['longzeluola','canglaoshi','qiaobenai','nick'] lis = list('abcd') 方法: 优先掌握 索引取值(即可取又可改) 切片 长度 append 成员运算 for循环 需要掌握 count remove reverse pop insert sort index del extend clear 多个值or一个值:多个值

第二章 python中重要的数据结构(下)

二.元组(tuple):不可变序列 跟list一样,也是一种序列,唯一不同的是,元组元素不能被修改,通常用(, ,)表示元组,也可以不加括号. 1 #创建元组 2 >>> 1,2,3 3 (1, 2, 3) 4 >>> t = (1,2,3) 5 >>> t 6 (1, 2, 3) 7 #创建空元组 8 >>> t1 = () 9 >>> t1 10 () 11 #创建只有一个元素的元组,这里注意必须带上逗号 12

Python学习(一):入门篇:python中的一些数据结构

Python里的一些基本知识点总结 Last Edit 2014/5/2 这里记录的是Python2.7版本的语法特征,部分与Python3.0是不一样的. 一,关于开发环境 在windows下可以直接在官网下载相关的版本,然后默认安装.使用直带的IDLE编辑器. IDLE中两个有用的快捷键: ALT+P:重复历史命令(从最近到最老) ALT+N:   重复历史命令(从最老到最近) IDLE中没有清屏功能. 在cmd中进行: 1,首先要在环境变量的path中添加相关的路径: C:\Python2

Python中的高级数据结构(转)

add by zhj: Python中的高级数据结构 数据结构 数据结构的概念很好理解,就是用来将数据组织在一起的结构.换句话说,数据结构是用来存储一系列关联数据的东西.在Python中有四种内建的数据 结构,分别是List.Tuple.Dictionary以及Set.大部分的应用程序不需要其他类型的数据结构,但若是真需要也有很多高级数据结构可供 选择,例如Collection.Array.Heapq.Bisect.Weakref.Copy以及Pprint.本文将介绍这些数据结构的用法,看 看它

Python中的高级数据结构详解

这篇文章主要介绍了Python中的高级数据结构详解,本文讲解了Collection.Array.Heapq.Bisect.Weakref.Copy以及Pprint这些数据结构的用法,需要的朋友可以参考下 数据结构 数据结构的概念很好理解,就是用来将数据组织在一起的结构.换句话说,数据结构是用来存储一系列关联数据的东西.在Python中有四种内建的数据结构,分别是List.Tuple.Dictionary以及Set.大部分的应用程序不需要其他类型的数据结构,但若是真需要也有很多高级数据结构可供选择

Redis 中 5 种数据结构的使用场景介绍

这篇文章主要介绍了Redis中5种数据结构的使用场景介绍,本文对Redis中的5种数据类型String.Hash.List.Set.Sorted Set做了讲解,需要的朋友可以参考下 一.redis 数据结构使用场景 原来看过 redisbook 这本书,对 redis 的基本功能都已经熟悉了,从上周开始看 redis 的源码.目前目标是吃透 redis 的数据结构.我们都知道,在 redis 中一共有5种数据结构,那每种数据结构的使用场景都是什么呢? String——字符串 Hash——字典

python 全栈 python基础 (五)三元运算 字符编码 元组 集合 三级菜单优化!

三元运算 条件判断不能加冒号: a=3 b=5 c=a if a<b else b oct() 转成八进制的简写:16进制 标志:BH为后缀或是0x为前缀hex() 转成16进制 元组 跟列表是一样一样的!但它是只读列表,没有更改的权限! dir() 把传入的数据类型的,所有方法以列表的形式返回.作用: 明确的表示 元组里存储的数据是不应该被修改的!!! list(tuple元组) 变成列表 tuple(list列表) 变成元组 集合 setlinux ={"","&q

python collection模块中几种数据结构(Counter、OrderedDict、namedtup)

collection模块中有几种数据结构我们可能用得到. Counter是字典的子类,负责计数的一个字典,支持 + 加法 - 减法 & 求公共元素 | 求并集 print('Counter类型的应用') c = Counter("dengjingdong") #c = Counter({'n': 3, 'g': 3, 'd': 2, 'i': 1, 'o': 1, 'e': 1, 'j': 1}) print("原始数据:",c) print("最