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-08-24 21:39:27

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

python数据结构-列表和元组

1.列表和元祖 1)列表和元组,都是一个可以放置任意数据类型的有序集合 在绝大多数编程语言中,集合的数据类型必须一致.不过,对于 Python 的列表和元组来说,并无此要求 2)两者区别: 列表是动态的,长度大小不固定,可以随意地增加.删减或者改变元素(mutable) 而元组是静态的,长度大小固定,无法增加删减或者改变(immutable) 可是,如果你想对已有的元组做任何"改变",该怎么办呢?那就只能重新开辟一块内存,创建新的元组了. 3)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的列表,元组和字典简单介绍

引 入 java                                   python 存取多个值:数组或list集合 ------------------------> 列表,元组 key-value格式:    Map        ------------------------>    字典 自己学习发现,java跟python这两门面向对象语言在数据类型的定义上,很多思想都是互通的,这里不说java,简单介绍一下python的列表,元组和字典. 一.列表 List: 最通

python数据类型——列表、元组、字典、集合

python中的序列,是一块用来存储多个值的连续内存空间,类似于C语言中的数组 常用的序列结构有列表.元组.字典.字符串.集合等, 无序序列:字典.集合 有序序列:列表.元组.字符串,支持双向索引(第一个元素下标为0,最后一个元素下标为-1) 不可变序列:字符串.元组 可变序列:列表.集合.字典 一.列表 尽量从列表尾增加或删除元素,可以大幅度提高处理速度 列表中的元素可以不相同 列表常用方法,见下表,可参考https://www.cnblogs.com/huangping/p/7730347.

python:列表、元组和字典

1.1.特点: 任意对象的有序集合 通过偏移量读取 可变长度,异构以及任意嵌套 属于可变序列的分类 对象引用数组:当把一个对象赋给一个数据结构元素或变量名时,python总会存储对象的引用,而不是对象的拷贝. 1.2.创建列表     name_list = ['zhang', 'wang', 'li']     或 name_list = list(['zhang', 'wang', 'li']) 1.3.基本操作 索引:name_list[1] 列表中,第一个元素索引值为0.     追加:

Python自动化 【第二篇】:Python基础-列表、元组、字典

本节内容 模块初识 .pyc简介 数据类型初识 数据运算 列表.元组操作 字符串操作 字典操作 集合操作 字符编码与转码 一.模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持,让我们先来象征性的学2个简单的. sys 1 #!/usr/bin/env python 2 3 # -*- coding: utf-8 -*- 4 5 6 7 import sys 8 9 10 11 print(sys.argv) 12 13

python之列表,元组,字典。

在博主学习列表,元组以及字典的时候,经常搞混这三者.因为他们都是用括号表示的.分别是[],(),{}. 列表(list): [1,'abc',1.26,[1,2,3],(1,2,3),{'age:18'}] 列表中的元素可以是整型,浮点型,字符串,也可以是元组,列表,字典. 列表中的元素是有序的,而且元素可以更改,包括增删改.列表类似于Java之中的数组. 列表的常用方法:append,extend,remove,insert,pop,sort,reverse. 1 #!/usr/bin/pyt

python中列表、元组、字典简单介绍

简单说明一下,我之前接触过C++语言,Java语言,然后为了写自动化测试脚本又接触了python语言.虽然我不是编程大牛(开发人员).但是从我接触的这几个语言来说,如果你想学编程,以前又没有学习过,那么我真的挺建议大家去学习python的.我也理解了为什么会有一句话"人生苦短,我要用python" 首先说下这几个的定义: 1.列表(list):专门用于存储一串信息,列表用中括号[]定义,数据之间使用逗号,分隔 如图: 2.元组(Tuple):与列表类似,不同之处在于元组的元素不能修改,

2.列表字符串字典元组集合

list: 增:list.append("str") 追加str到list最后 插入:list.insert(num,"str") 在list的num位置插入str 修改:list[num] = "str" 把list的第num位置改为str 把另一个列表元素添加进来: list.extend(list2) #list = [list[0],list[1],...list[-1],list2[0],list2[1]] 删: (1)list.rem