• 字典


    字典:也是基础数据类型:字典可以储存大量的数据,关系型数据。同样也是python中唯一的映射类型的数据类型。

    数据类型的分类:

    可变(不可哈希)的数据类型:list,dict

    不可变(可哈希)数据类型:str,int,booltuple

    字典的键必须是不可变的数据类型(工作中字典的键一般是数字,字符串,)

    字典的值可以是任意的数据

    字典优点:可以储存大量的数据,关系型数据;查询速度快

    Python3.5包括3.5版本之前的字典是无序的。

    Python3.6后有序

    字典的使用:

    dic = {}

    增:两种方法

    1. dic['name'] = 'abc'  字典中如果有键name,则替换值,没有则新增。

    2.dic.setdefault('name','abc') 字典中如果有键name,则不做什么操作,没有则新增。

    删:四种方法

    1.dic.pop('name') ,dic.pop('name','任意值'):通过键去删除键值对,如果键不存在字典中则报错,如果设置了第二个参数则不会报错,并把第二个参数返回。

    2.dic.clear 清空字典

    3.dic.popitem()         popitem :3.5 之前随即删除某个键值对,3.6以后,删除最后一组键值对。有返回值.

    4.del dic['name']     del  dic   通过键删除键值对;删除这个列表 

    改:

     dic['name'] = 'acd'  通过键值对修改值

     两个字典 update
     dic = {"name":"jin","age":18,"sex":"male"}
     dic2 = {"name":"alex","weight":75}
     dic.update(dic2) # 将dic2中的所有键值对覆盖并添加到dic中,dic2 不变。
     print(dic)
     print(dic2)
     dic.update(a='666',b='222',name='taibai')

    查:

    print(dic['name'])

    dic.get('name')

    dic.get('name1','没有此键。。。。')

    dic.keys()     把字典中所有的键打印出来
    # print(dic.keys(),type(dic.keys())) # 类似于列表的容器中
    # l1 = list(dic.keys()) #  转化为List,列表以字典中的键为元素
    # print(l1)
    # for key in dic.keys(): #  把字典中的键循环打印出来
    # print(key)

    #dic.values() 可转化成list,可遍历。
    # print(dic.values())
    # print(list(dic.values()))  转化为字典,并把字典中的键对应的值作为列表中的元素

    #dic.items() 可转化成list,可遍历。
    # print(dic.items())

    分别赋值
    # a,b = 10,20
    # a,b = [10,20]
    # a,b = [(1,2),(3,4)]

    # a = 10
    # b = 20
    # a,b = b,a

    把字典中的键对值打印出来

    # for i in dic.items():
    # i = ('name', '太白')
    # i = ('age', 18)
    # ....
    # '''
    # print(i)

    # for k,v in dic.items():
    # '''
    # k,v = ('name', '太白')
    # k,v = ('age', 18)
    # ....
    # '''
    # print(k,v)

    # for i in dic:
    # print(i)
    # dict
    # print(len(dic))

  • 相关阅读:
    NDK 在 Android studio如何使用(Android studio NDK)
    懒人习惯之ButterKnife Zelezny
    Android 如何在Eclipse 引入外部纯Java项目(不是打成Jar使用)
    android:ellipsize="end" 失效或者 相关的Bug
    Python 父目录获取
    RecyclerView中实现headerView,footerView功能
    Win7/Win8.1右键菜单技巧:应用程序任意加
    使用android-resource-remover优化资源使用率和lint-result.xml如果导出
    Android Studio 1.1.0版本以上 优化编译
    关于Eclipse如何加入Gradle文件与Android Studio两个平台一起开发,工作目录不发生变化
  • 原文地址:https://www.cnblogs.com/lijinming110/p/9443549.html
Copyright © 2020-2023  润新知