zoukankan      html  css  js  c++  java
  • Python快速学习06:词典

      系列文章:[传送门]

      上面讲的,特别是对象和类,大家好好体会。

      Python对象是Python语言的核心部分。今天介绍一个新类:词典(dictionary

    基本概念

      字典是Python 中的映射数据类型,工作原理类似关联数组或者哈希表,由键-值(key-value)对构成。几乎所有类型的Python 对象都可以用作键不过一般还是以数字或者字符串最为常用。值可以是任意类型的Python 对象,字典元素用大括号({ })包裹。

    例子

    dic = {'tom':11,'sam':57,'lily':100}
    print (type(dic))
    print (dic.keys())
    print (dic.values())
    print (dic.items())

    会有下面的输出

    <class 'dict'>
    dict_keys(['sam', 'lily', 'tom'])
    dict_values([57, 100, 11])
    dict_items([('sam', 57), ('lily', 100), ('tom', 11)])

    #可见dic是个 词典

    #典中的键的集合或者值的集合。方法Keys() 或 values() 返回一个列表,该列表是可排序的。 你还可以用 items()方法得到包含键、值对的元组的列表来排序。

    由于词典本身是哈希的,所以是无序的。

    何为哈希

      哈希表是一种数据结构:它按照我们所要求的去工作。哈希表中存储的每一条数据,叫做一个值(value),是根据与它相关的一个被称作为键(key)的数据项进行存储的。键和值合在一起被称为键-值 对”(key-value pairs)。 哈希表的算法是获取键,对键执行一个叫做哈希函数的操作,并根据计算的结果,选择在数据结构的某个地址中来存储你的值。任何一个值存储的地址皆取决于它的键。正因为这种随意性,哈希表中的值是没有顺序的。

    与表不同的是,词典的元素没有顺序。你不能通过下标引用元素。词典是通过键来引用

    print (dic['tom'])
    dic['tom']=30
    print (dic)

    为词典增加一个新元素

    dic["jeffLi"] = 99
    print (dic)

    #这里新建一个键,并赋予一个值。

    词典的循环调用

    for key in dic:
        print ('key=%s, value=%s' % (key, dic[key]))

    #在循环中,dict的每个键,被提取出来,赋予给key变量。

    会有下面的输出

    key=lily, value=100
    key=sam, value=57
    key=tom, value=30

    其他常用方法

    del dict2['name'] # 删除键为“name”的条目
    dict2.clear()     # 删除dict2 中所有的条目
    del dict2         # 删除整个dict2 字典
    dict2.pop('name') # 删除并返回键为“name”的条目

    #del是Python的保留字

    总结

      #请不要用 dict, list,file, bool, str, input, len 这样的内建类型为变量命名。重载dict()会给你带来麻烦和潜在的bugs

        #词典的每个元素是键值对。元素没有顺序。

    感谢及资源共享

        

        路上走来一步一个脚印,希望大家和我一起。

        感谢读者!很喜欢你们给我的支持。如果支持,点个赞。

        知识来源: http://book.douban.com/doulist/3870144/

  • 相关阅读:
    linux学习(六)计划任务命令
    如何在在手机上安装linux(ubuntu )关键词:Termux
    linux学习(五)用户与组管理命令,以及用户信息文件解释
    linux学习(四)复制(cp)移动(mv)删除(rm)查找(find)文件、文件夹操作、软硬链接的区别
    Flutter中通过https post Json接收Json
    Api管家系列(一):初探
    Api管家系列(三):测试和Rest Client
    Api管家系列(二):编辑和继承Class
    JDK8 时间相关API基本使用
    windows杀端口
  • 原文地址:https://www.cnblogs.com/Alandre/p/3667126.html
Copyright © 2011-2022 走看看