Python中列表、字典、元组、集合数据结构整理_python

本文详细归纳整理了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'}

希望本文所述对大家的python程序设计有所帮助。

时间: 2016-11-20

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

python列表与元组详解实例_python

在这章中引入了数据结构的概念.数据结构是通过某种方式组织在一起的数据元素的集合.在python中,最基本的数据结构就是序列.序列中的每个元素被分配一个序号,即元素的位置,也被称为索引.注意:第一个索引是0.1.序列概览python有6种内建的序列:列表,元组,字符串,Unicode字符串,buffer对象和xrange对象. 这里重点介绍列表和元组.列表和元组主要区别在于,列表可以修改,元组不可修改.一般来说,在几乎所有情况下列表都可以代替元组.在需要操作一组数值的时候,序列很好用: 复制代码

Python中列表的一些基本操作知识汇总

  这篇文章主要介绍了Python中列表的一些基本操作知识汇总,皆属于Python的基本功,需要的朋友可以参考下 Python最基本的数据结构是序列(列表/元组).一个序列中的每个元素都分配有一个数字- 它的位置或索引.第一个索引是0,第二个索引是1,依此类推. Python有6内置类型的序列,但最常见的是列表和元组,我们将在本教程中看到. 有一些东西可以使用所有序列类型来做.这些操作包括索引,切片,加,乘,并检查成员.此外,Python已经内置函数查找序列的长度和搜索它的最大和最小的元素. P

用Python中的字典来处理索引统计的方法

  这篇文章主要介绍了用Python中的字典来处理索引统计的方法,字典的使用是Python学习当中的基础知识,本文则是相关的一个小实践,需要的朋友可以参考下 最近折腾索引引擎以及数据统计方面的工作比较多, 与 Python 字典频繁打交道, 至此整理一份此方面 API 的用法与坑法备案. 索引引擎的基本工作原理便是倒排索引, 即将一个文档所包含的文字反过来映射至文档; 这方面算法并没有太多花样可言, 为了增加效率, 索引数据尽可往内存里面搬, 此法可效王献之习书法之势, 只要把十八台机器内存全部

在Python中操作字典之fromkeys()方法的使用

  这篇文章主要介绍了在Python中操作字典之fromkeys()方法的使用,是Python入门的基础知识,需要的朋友可以参考下 fromkeys()方法从序列键和值设置为value来创建一个新的字典. 语法 以下是fromkeys()方法的语法: ? 1 dict.fromkeys(seq[, value])) 参数 seq -- 这是将用于字典的键准备的值的列表. value -- 这是可选的,如果提供的话则值将被设置为这个值 返回值 此方法返回列表. 例子 下面的例子显示fromkeys

在Python中操作字典之clear()方法的使用

  这篇文章主要介绍了在Python中操作字典之clear()方法的使用,是Python入门的基础知识,需要的朋友可以参考下 clear()方法将删除字典中的所有项目(清空字典) 语法 以下是clear()方法的语法: ? 1 dict.clear() 参数 NA 返回值 此方法不返回任何值. 例子 下面的例子显示了clear()方法的使用 ? 1 2 3 4 5 6 7 #!/usr/bin/python   dict = {'Name': 'Zara', 'Age': 7};   print

在Python中操作字典之setdefault()方法的使用

  这篇文章主要介绍了在Python中操作字典之setdefault()方法的使用,是Python入门学习中的基础知识,需要的朋友可以参考下 setdefault()方法类似于get()方法,但会设置字典[键]=默认情况下,如果键不是已经在字典中. 方法 以下是setdefault()方法的语法: ? 1 dict.setdefault(key, default=None) 参数 key -- 这是要被搜索的键 default -- 这是没有找到键的情况下返回的值. 返回值 此方法返回字典可用的

Python中的字典遍历备忘_python

备忘一下python中的字典如何遍历,没有什么太多技术含量.仅供作为初学者的我参考. 复制代码 代码如下: #!/usr/bin/env python # coding=utf-8 demoDict = {'1':'Chrome', '2':'Android'} for key in demoDict.keys():     print key for value in demoDict.values():     print value for key in demoDict:     pri

python中列表字符串的操作

问题描述 python中列表字符串的操作 li是一个大列表li=[['2324667 7326496n'] [] ...........]共100个小列表构成,如果想把每个小列表中的n去掉,该怎么写? 解决方案 #!/bin/python3li = [['1234565464n']['3125345n']['789132n']['789231ssdn']] for i in li: for j in i: print(j.strip()end="""") 解决方案二

python中列表元素连接方法join用法实例_python

本文实例讲述了python中列表元素连接方法join用法.分享给大家供大家参考.具体分析如下: 创建列表: >>> music = ["Abba","Rolling Stones","Black Sabbath","Metallica"] >>> print music 输出: ['Abba', 'Rolling Stones', 'Black Sabbath', 'Metallica']