zoukankan      html  css  js  c++  java
  • Python26之字典2(内置函数)

    一、工厂函数的概念

      和序列类型的工厂函数一样,dict()也是一个工厂函数,本质上是一个类,Python程序无处不对象的概念可见一斑

    二、字典类型内置函数的用法

      1、fromkeys(iterable,value=None)创建并返回一个新的字典。其中第一个参数是可迭代对象(序列类型),第二个参数是value值,当第二个参数不提供时,则默认为None

     1 dict1 = dict()
     2 dict2 = dict1.fromkeys((1,2,3),'kst')
     3 dict2
     4 {1: 'kst', 2: 'kst', 3: 'kst'}
     5 dict3 = dict1.fromkeys((1,2,3,4))
     6 dict3
     7 {1: None, 2: None, 3: None, 4: None}
     8 dict4 = dict2.fromkeys((1,2,3,4,5),'詹姆斯')
     9 dict4
    10 {1: '詹姆斯', 2: '詹姆斯', 3: '詹姆斯', 4: '詹姆斯', 5: '詹姆斯'}
    View Code

      2、访问字典的内置函数

        访问字典的内置函数,主要就是访问字典的key和字典的value,这两者访问方法分别为keys()和values()

     1 dict4
     2 {1: '詹姆斯', 2: '詹姆斯', 3: '詹姆斯', 4: '詹姆斯', 5: '詹姆斯'}
     3 >>> dict4.keys()
     4 dict_keys([1, 2, 3, 4, 5])
     5 >>> for eachkey in dict4.keys():
     6     print(eachkey)
     7 
     8 1
     9 2
    10 3
    11 4
    12 5
    13 
    14 >>> dict4.values()
    15 dict_values(['詹姆斯', '詹姆斯', '詹姆斯', '詹姆斯', '詹姆斯'])
    16 >>> for eachvalue in dict4.values():
    17     print(eachvalue)
    18     
    19 詹姆斯
    20 詹姆斯
    21 詹姆斯
    22 詹姆斯
    23 詹姆斯
    View Code

      3、get(k,d)通过key返回对应的value值,第一个参数为key值,第二个参数为默认返回的value值,当key存在则返回对应的value,不存在字典内则返回d,如果不提供则默认返回None

    1 dict1 = {0:'232',2:'fdas',3:'fd'}
    2 >>> dict1
    3 {0: '232', 2: 'fdas', 3: 'fd'}
    4 >>> dict1.get(3,'木有')
    5 'fd'
    6 >>> dict1.get(1,'木有')
    7 '木有'
    View Code

      4、清空一个字典clear()和复制一个字典copy()

        注:copy()和赋值是不同概念,copy()时创建新的对象,其值复制到一个新的内存地址中,赋值是将值赋予新的符号,值的内存地址没有发生改变

      5、去除字典的某个元素(使用内置函数pop())

      pop(k,d)   当k存在于字典的key中时,则去除该k对应的key和value值,否则返回d(提示信息),当d未提供时返回错误

      类似的还有popitem()

      6、给字典增加一个item(使用setdefault(k,d))  返回k对应的value值,当k不存在时返回对应的d的值,如果d没有提供则返回空(None),如果k不存在于字典内时,将d作为value映射给k

     1 dict1
     2 {0: '232', 2: 'fdas', 3: 'fd'}
     3 >>> 
     4 >>> dict1.setdefault(1)
     5 >>> dict1
     6 {0: '232', 2: 'fdas', 3: 'fd', 1: None}
     7 >>> dict1.setdefault(1,'詹姆斯')
     8 >>> dict1
     9 {0: '232', 2: 'fdas', 3: 'fd', 1: None}
    10 >>> dict1.setdefault(4,'詹姆斯')
    11 '詹姆斯'
    View Code
  • 相关阅读:
    net 面试题
    Entity Framework Core 三条引用三条命令
    软件开发模型设计
    Mysql局域网共享
    基于WinForm,百度ai接口开发的人脸识别
    WinForm创建
    SQLite Encryption(加密)新姿势
    WPF-MenuItem只显示最后一个Icon
    《深入浅出WPF》-刘铁猛学习笔记——XAML
    为什么你的问题群里没人回答?这就是原因!
  • 原文地址:https://www.cnblogs.com/ksht-wdyx/p/11362707.html
Copyright © 2011-2022 走看看