• Python基础笔记系列六:字典


      本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!!

    • 字典
      字典的元素是由一对对键值对组成,每一对之间用逗号隔开,将所有的键值对用花括号括起来就构成了字典。它是无序的,键和值之间用冒号隔开。
      语法格式:dic_name={key:value,key:value,key:value}
      简单来说:
        1.类似于json,也就是key-value键值对
        2.不允许同一个键值出现两次,所以一般对字典的操作都是对键进行操作
        3.键必须不可变,所以可以用数字,字符串,元组充当,而不能用列表
      例如:
      1 dic={"key1":"value1","key2":"value2","key3":"value3"} #定义字典

      1.字典的基础操作
        
        1)
      可以增加、删除、修改、访问字典中的元素。同样也可以求字典的长度
      例子:

       1 dic={"key1":"value1","key2":"value2","key3":"value3"} #定义字典
       2 print dic  #打印整个字典
       3 print dic["key2"]  #根据key找value
       4 
       5 del dic['key1']  #根据key删除元素(通过键删除一个键值对)
       6 print dic 
       7 
       8 dic['key4']="value4" #可以直接添加一个原字典里没有的元素(key不存在就行)
       9 print dic 
      10 
      11 dic["key2"]=45678   #修改字典中的某值
      12 print dic  #打印整个字典
      13 
      14 print len(dic)  #字典的长度

      输出:

      1 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
      2 value2
      3 {'key3': 'value3', 'key2': 'value2'}
      4 {'key3': 'value3', 'key2': 'value2', 'key4': 'value4'}
      5 {'key3': 'value3', 'key2': 45678, 'key4': 'value4'}
      6 3

        2)也可以通过字典的in运算对字典进行遍历(其实是用的for循环),也可以用来判断某个是否在字典中。

      例子:
      1 dic={"key1":"value1","key2":"value2","key3":"value3"} #定义字典
      2 for key in dic:
      3     print key,dic[key]   #遍历字典并输出
      4 
      5 print 'key1' in dic #判断键值为key1是否存在于字典中
      6 print 'key5' in dic 

      输出:

      1 key3 value3
      2 key2 value2
      3 key1 value1
      4 True
      5 False

       2.字典的相关函数

        1)字典复制copy函数:字典的copy方法可以新建一字典与拷贝对象里的数据项一样。
      例子:
      1 dic={"key1":"value1","key2":"value2","key3":"value3"} #定义字典
      2 dic1 = dic.copy() #字典复制
      3 print dic
      4 print dic1
      5 del dic1['key3']  #dic1是dic的一个副本,对dic1进行操作不影响dic
      6 print dic
      7 print dic1   

      输出:

      1 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
      2 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
      3 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
      4 {'key2': 'value2', 'key1': 'value1'}

        2)字典的get函数和update函数:dic_name.get(key_name)函数等价于dic_name[key_name]用来获取某键对应的值。update(key_value)函数用来更新字典里对应Key的值,如果要更新的key在字典里不存在,则update就向字典里增加数据。
      例子:

      1 dic={"key1":"value1","key2":"value2","key3":"value3"} #定义字典
      2 print dic 
      3 print dic.get('key1') #相当于dic['key1']
      4 dic.update({'key1':'value8'}) #更新key1的值
      5 print dic 
      6 dic.update({'key5':'value9'}) #增加key5
      7 print dic 

      输出:

      1 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
      2 value1
      3 {'key3': 'value3', 'key2': 'value2', 'key1': 'value8'}
      4 {'key3': 'value3', 'key2': 'value2', 'key1': 'value8', 'key5': 'value9'}

        3)字典里的keys()、values()、items()函数:他们返回的都是一个列表。keys()获取字典的所有Key,values()获取字典的所有value,items()获取字典的key,value值。
      例子:

      1 dic={"key1":"value1","key2":"value2","key3":"value3"} #定义字典
      2 print dic 
      3 print dic.keys()  #获取所有的Key
      4 print dic.values() #获取所有的value
      5 print dic.items() #获取所有的key,value

      输出:

      1 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1'}
      2 ['key3', 'key2', 'key1']
      3 ['value3', 'value2', 'value1']
      4 [('key3', 'value3'), ('key2', 'value2'), ('key1', 'value1')]

        4)字典dict()函数:创建字典的函数
      例子:

       1 d0 = dict() #创建空字典
       2 print d0
       3 
       4 d1 = dict(a='123',b=456) #通过赋值创建字典 ,key不能加引号,value如果是字符串就要加引号,是数字可以不加
       5 print d1
       6 
       7 key = range(1,3) 
       8 value = ['john','Tom','Jack']
       9 d2 = dict(zip(key,value)) #通过一对列表创建字典
      10 print d2 

      输出:

      1 {}
      2 {'a': '123', 'b': 456}
      3 {1: 'john', 2: 'Tom'}

        4)字典的pop()、popitem()和clear()函数:pop()函数用于通过key来获取其value值并从字典里删除该数据项。popitem()函数随机移除一个数据项并返回移除的数据项(元组形式返回)。clear()函数用于清除字典数据项。
      例子:

       1 dic={"key1":"value1","key2":"value2","key3":"value3","key4":"value4","key5":"value5"} #定义字典
       2 print dic 
       3 
       4 print dic.pop('key2') #删除key2并返回Key2对应的value值
       5 print dic
       6 print dic.popitem() #随机删除一对数据项,并以元组形式返回该数据项
       7 print dic
       8 
       9 dic.clear() #清空字典的条目
      10 print dic 

      输出:

      1 {'key3': 'value3', 'key2': 'value2', 'key1': 'value1', 'key5': 'value5', 'key4': 'value4'}
      2 value2
      3 {'key3': 'value3', 'key1': 'value1', 'key5': 'value5', 'key4': 'value4'}
      4 ('key3', 'value3')
      5 {'key1': 'value1', 'key5': 'value5', 'key4': 'value4'}
      6 {}

        字典还有很多函数,这里只是冰山一角,其它的可以查文档哦~

  • 相关阅读:
    Array方面Js底层代码学习记录
    DOM 节点
    跨域
    狂雨cms代码审计:后台文件包含getshell
    在PHP一句话木马使用过程中的种种坑点分析
    记对某CMS的一次代码审计
    通达OA任意文件上传并利用文件包含导致远程代码执行漏洞分析
    DedeCMS V5.7 SP2后台存在代码执行漏洞
    zzzcms(php) v1.7.5 前台SQL注入及其他
    权限维持及后门持久化技巧总结
  • 原文地址:https://www.cnblogs.com/hyyq/p/8909435.html
Copyright © 2020-2023  润新知