• python 的基础 学习 第六天 基础数据类型的操作方法 字典


    1,字典

    字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。

      字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

       字典所有的操作都是通过键  key操作的

    1,增

    第一种,[  ]有则覆盖,无则添加。

    dic={'name':'gonn','jin':'jilo'}
    dic['hobby']='girl'
    dic['name'] ='jinxin'
    print(dic)

    第二种,setdefault,无则添加,有则不变

    dic={'name':'gonn','jin':'jilo'}
    dic.setdefault('hobby','girl')
    dic.setdefault('name','li')
    print(dic)

    2,删除,pop,,,clear,,del

    dic={'name':'gonn','jin':'jilo'}
    print(dic.pop('jo',None))#删除都是通过键删除,有返回值
    #打印你返回你设定的值,如果没有这个键会报错。一般加  None
    print(dic)
    dic={'name':'gonn','jin':'jilo'}
    print(dic.popitem())#随机删除
    dic={'name':'gonn','jin':'jilo'}
    #dic.clear()#清空列表
    #del dic#清空列表
    del dic['name']#通过键删除
    print(dic)

    3,改

    dic = {'name':'yu','age':'22'}
    # dic['name']='jinjin'
    dic1 = {'ww':'nami','lll':'ee'}
    dic.update(dic1)#将dic1的键值对添加到dic
    print(dic)

    4,查

    通过键查

    dic={'name':'gonn','jin':'jilo'}
    # print(dic['name'])
    # print(dic.get('name'))
    print(dic.get('yu'))#单个查询用get,没有返回None,也可以设置

    5,其他方法,keys,  values,  items

    keys把所有的键放在一个类似列表中。

    values把所有的值放在一个类似列表中。

    items把所有的键值放在一个类似列表中

    dic={'name':'gonn','jin':'jilo'}
    for i in dic.keys():
    for i in dic.values():
    for i in dic.items():
        print(i)

    特殊类型dict转换成  list       print(list(keys()))

    6,分别赋值

    
    
    a=4
    b=5
    a,b=b,a
    print(a,b)
    
    
    dic={'name':'gonn','jin':'jilo'}
    for a,b in dic.items():
    print(a,b)#a,b分别赋值
    
    

    补全如下代码 li = [11,22,33,44,55,77,88,99,90],把大于66的放进key1中,把小于66的放进key2中
    result = {}
    for row in li:

    li = [11,22,33,44,55,77,88,99,90]
    result = {}
    for row in li:
        if row >66:
            if 'key1'not in result:
                result['key1'] = []
            result['key1'].append(row)
        if row <66:
            if 'key2'not in result:
                result['key2']= []
            result['key2'].append(row)
    print(result)
  • 相关阅读:
    MySQL5.7 多主一从(多源复制)同步配置
    mysql 树形查询 结果
    【教程】Chrome 浏览器安装Vue插件方法 (十分详细)
    MySQL数据库备份
    nginx之ngnix搭建静态服务器,前端css,js,图片,视频等静态资源走nginx代理,实现Nginx缓存,压缩
    尽量不要让儿女从事这3种工作,钱再多也别做,坚持再久也没前途
    【MySQL】mysql5.7多源复制报错问题处理
    MyBatis 多条件查询、动态SQL、多表操作、注解开发,应有尽有,一网打尽!
    MySQL 5.7多源复制配置详解
    mysql 逆向生成Pmd 文件
  • 原文地址:https://www.cnblogs.com/yzxing/p/8627087.html
Copyright © 2020-2023  润新知