• python0.7-----元组和字典


    元组:不可变的列表

    优点:安全,对于数据的定义,能用元组就用元组,因为它不可变。

    创建空的元组:

    tuple1=()

    创建带有不同类型元素的元组:

    tuple2=(1,1.1,’good’,true,None,(1,2,3),[1,2,3,4],{1:2,3:4})

    创建只有一个元素的元祖

    tuple3=(1,)    记住:一定要叫上这个逗号,不然系统会认为tuple3是整数类型

    增:

    无,因为元组不可变

    删:

    del tuple3

    改:

    元组元素是不能被修改的,但若元组的元素是列表或者字典,由于这两种类型存在元组里面的是地址,因此只要不改变放在元组里面的列表或者字典的地址,而改变里列表或者字典的元素,对于元组列说,其元素是没有修改的。因此,对于元组的列表元素或者字典元素,是可以修改的。

    记住:只能修改列表的元素。如果修改整个列表,列表的引用就会发生变化,那么元组里面的列表地址就会发生变化,就会发生错误。

    例如:

    list1=[123,123,111]

    print(id(list1))

    list1[0]=1  #只修改列表元素,列表的地址没有发生改变

    print(id(list1))

    list1=[11,11] #这是在修改列表的引用,会开辟新的内存空间,引用的列表地址会发生变化

    print(id(list1))

    查:

    格式:元组名[下标]  

    记住:下标不可以越界

    下标可以是负数:例如:元组tuple3的长度为5,那么tuple3[-1]表示最后一个元素,tuple[-2]表示倒数第二个,tuple[-5]表示第一个元素

    例如:tuple2[4] 查得None

    对元组的操作:

    例如:

    t1=(1,2,3)

    t2=(4,5,6)

    元组的连接:t1+t3  得到一个元组:(2,2,3,4,5,6)

    元组的重复:t1*3   得到一个元组:(1,2,3,1,2,3,1,2,3)

    判断元素是否在元组中:  元素1 in 元组名1  若元素1存在于元组1,则返回True,否则返回False

    元组的截取:

    格式:元组名[[start]:[end]] :截取元组下标[start,end)里面的子元组

     

    二维元组:

    t1=((1,2),(3,4),(5,6),(7,8))  访问t1[下标][下标]

     

    元组的方法:

    len(元组名):返回元组中元素的个数

    max(元组名):返回元组中的最大值

    min(元组名):返回元组中的最小值

    tuple(列表名):将列表转化为元组

     

     

    字典:

    概述:使用键值(key-value)存储,具有极快的查找和插入和删除速度。不像列表,列表的元素越多,查找速度就越慢,而字典跟元素的数量无关。但是字典相比较列表,字典要多消耗内存存储key。字典是无序的,不能用下标查找,例如dict[index]就是错误的访问方法,应该是dict[key]。

    字典的形式:

    dict1={key1:value1,key2:value2}

    key的特性:

    一:字典中的key必须唯一。

    二:key必须是不可变的对象。例如字符串,整数,元组可作为key。list可变,不能作为key。

    增,改:

    dict1[key]=value :在dict1中添加key:value,如果key存在,则覆盖原来存在的key-value,其实就是修改key对应的value的值。

    删:

    dict1.pop(key):删除key对应的key-value。

    查:

    格式: 字典名[key]

    当key不存在时,这种方式的访问就会报错。

    dict1.get(key)也是访问字典dict1的key对应的value,但是如果key不存在,返回None。

    dict1.value():返回一个列表,列表的内容为所有的value值。

    dict1.items():将字典转变成为列表,列表的元素是元组,元组的形式为:(key,value)。

    遍历字典:

    一:遍历key

    for key in dict1:

      print(key,dict[key])

    二:遍历value

    for value in dict1.value():

      print(value)

    三:遍历key-value

    for key,value in dict1.items():

      print(key,value)

     

    enumerate(dict1):将dict1中每个key用数字0,1,2,3......依此代替。改变成:0:value1,1:value2,....,n:valuen的形式。注意,该函数返回的类型为enumerate类型,只能用用for循环以遍历的形式查找其元素。并且dict1的内容不会发生任何改变。

    enumerate(list1):依此在list1元素前面加上数字0,1,2,3,......。该函数返回的类型为enumerate类型,只能用用for循环以遍历的形式查找其元素。并且list1的内容不会发生任何改变。

  • 相关阅读:
    ORACLE 查看所有表的数据条数
    ORACLE 查看表空间使用率
    处理 word 模板 xml 分割问题
    Linux驱动开发三.驱动框架重构
    别名模板与模板模板参数
    vue表格index序号随着分页的增加而增加
    20220421 08:00:02
    20220422 08:00:01
    20220423 08:00:02
    20220416 08:00:02
  • 原文地址:https://www.cnblogs.com/yulianggo/p/9193450.html
Copyright © 2020-2023  润新知