zoukankan      html  css  js  c++  java
  • 基础数据类型 :字典

    字典:是python中唯一一个映射的数据类型

    1、字典是无序的

    2、字典中的数据之间的关联性强。

    复制代码
    dic={'name':'alix','age':16,'job':'teacher'}
    dic1={'py8期':['alix','ritian'],'py6期':['张三','李四','王二麻子']}
    print(dic)
    print(dic1['py8期'][0])
    
    # {'name': 'alix', 'age': 16, 'job': 'teacher'}
    # alix
    复制代码

    3、键值对。dic(键:值)   其中字典的键必须是可哈希的(即为不可变的数据类型:字符串,数字,布尔值,元组);不可哈希(即可变的数据类型:列表,字典,set)

    复制代码
    dic={'name':'alix',[1,2,3]:'dhsh'}
    print(dic)
    
       # dic={'name':'alix',[1,2,3]:'dhsh'}
    #TypeError: unhashable type: 'list'
    #由于dic中有键为列表形式,在输出dic时就会报错
    复制代码

    4、键是唯一的。

    dic={'name':'alix','age':16,'job':'teacher','name':'wusir'}
    print(dic)
    #{'name': 'wusir', 'age': 16, 'job': 'teacher'}

    当有多个相同的键时,之后出现一次,且是随机输出的(虽然我的电脑重来就没有随机输出过)。

    字典的增

    1、直接加上字典的键,然后赋值添加到dic中。

    复制代码
    dic={'name':'alix','age':39,'job':'teacher'}
    dic['weight']=85
    print(dic)
    
    #{'name': 'alix', 'age': 39, 'job': 'teacher', 'weight': 85}
    #此时是在dic中增加一个没有的键,就是直接增加
    复制代码
    dic={'name':'alix','age':39,'job':'teacher'}
    dic['name']='jinxin'
    print(dic)
    #{'name': 'jinxin', 'age': 39, 'job': 'teacher'}
    #此时是在dic中增加一个本来就有的键值对,则原有的键值对的值就会被覆盖

    2、使用setdefault()

    复制代码
    dic={'name':'alix','age':39,'job':'teacher'}
    dic.setdefault('jin')
    print(dic)
    #{'name': 'alix', 'age': 39, 'job': 'teacher', 'jin': None}
    #此时在添加键值对时只输入了键,没有输入值,则输出时键值返回为None
    dic={'name':'alix','age':39,'job':'teacher'}
    dic.setdefault('jin','没有返回值')
    print(dic)
    #{'name': 'alix', 'age': 39, 'job': 'teacher', 'jin': '没有返回值'}
    dic={'name':'alix','age':39,'job':'teacher'}
    dic.setdefault('name','李四')
    print(dic)
    #{'name': 'alix', 'age': 39, 'job': 'teacher'}
    #添加的name在dic中本来就有,则不会对原dic进行改变。
    复制代码

    字典的删

    1、pop按照键去删,返回删除的值,如果没有就会报错dic.pop('hsjh')

    复制代码
    dic={'数字':[1,2,3],'字符':['a','v','x']}
    print(dic.pop('数字'))
    print(dic.pop('jdhkjdh','没有不报错'))
    
    # [1, 2, 3]
    # 没有不报错
    
    dic={'数字':[1,2,3],'字符':['a','v','x']}
    print(dic.pop('jhjksh'))
    
    #     print(dic.pop('jhjksh'))
    # KeyError: 'jhjksh'
    复制代码

    2、popitem()随机删除

  • 相关阅读:
    使用最新最酷的安卓开发技术
    Android之ConnectivityManager
    Android -- ViewDragHelper
    android 管理手机短信
    内存管理[6]测试堆的内存占用情况
    内存管理[5]通过 GetProcessHeaps 函数获取了当前进程的堆句柄列表
    内存管理[4]一个使用私有堆的例子
    内存管理[3]堆
    内存管理[2]
    内存管理[1]
  • 原文地址:https://www.cnblogs.com/hzqblog/p/7732805.html
Copyright © 2011-2022 走看看