zoukankan      html  css  js  c++  java
  • python 字典操作

    一 python中的字典是一种映射类型,其实现是通过哈希表实现的,哈希表是一种数据结构:它按照我们所要求的去工作。哈希表中存储的每一条数据,叫做一个值(value),是根据与它相关的一个被称作为键(key)的数据项进行存储的。键和值合在一起被称为“键-值 对”(key-value pairs)。 哈希表的算法是获取键,对键执行一个叫做哈希函数的操作,并根据计算的结果,选择在数据结构的某个地址中来存储你的值。任何一个值存储的地址皆取决于它的键。正因为这种随意性,哈希表中的值是没有顺序的。你拥有的是一个无序的数据集。哈希表拥有很好的性能,用键查值相当快。

    二 python字典的相关操作:

      1. 创建字典

    # 第一种方法
    dict1 = {'name':'linda','age':13}
    # 第二种方法 dict2
    = dict(['name','linda'],['age',13])
    #第三种方法,将一个可迭代对象的值作为字典的每一个键,赋值为1 dict3
    = {}.fromkeys(('x','y','z'),1)

    2.访问字典

    # 返回一个键的列表
    dict1.keys()  
    ['name','age']
    # 返回一个值的列表 dict1.values() [
    'linda',13]
    # 返回一个包含(键,值)元组的列表 dict1.items() [(
    'name','linda'),('age':13)]
    # 返回键name对应的值 dict1[
    'name'] 'linda'

    # 得到键的值,若键不存在,则返回默认值 dict1.get('name',None) 'linda'

    # 字典中没有sex,返回默认值man dict1.get('sex','man') 'man' dict.iter() #方法 iteritems(), iterkeys(), itervalues()与它们对应的非迭代方法一样,不同的是它们返回一个迭代子,而不是一个列表。

    3.修改字典

    # 修改键name的值
    dict1['name'] = 'lihua' 
    
    # 给字典增加一个新的值,给字典中增加一个电话(注意,新增加的这个值的键在原来字典中不存在,若存在,则是修改原来的值)
    dict1['mobile'] = '1333333'
    
    # 如果字典中 key 键存在,删除并返回 dict[key],如果 key 键不存在,且没有给出 default 的值,引发KeyError 异常
    dict1.pop('name','unknown')
    'linda' 
    
    # 删除键name这条记录
    dict1.remove('name') 
    
    #如果字典中不存在 key 键,由 dict[key]=default 为它赋值,若存在则不改变它的值
    dict1.setdefault('name',default='unknown')  
    
    # 将字典 dict2 的键-值对添加到字典 dict,(在dict存在的键,则更新值,不存在的,则添加)
    dict.update(dict2)  
    
    #删除字典中所有元素
    dict.clear()  
    
    #删除字典
    del dict1 
  • 相关阅读:
    Windows Server 2012配置开机启动项
    Windows Server 2019 SSH Server
    NOIP2017 senior A 模拟赛 7.7 T1 棋盘
    Noip 2015 senior 复赛 Day2 子串
    Noip 2015 senior复赛 题解
    Noip 2014 senior Day2 解方程(equation)
    Noip 2014 senior Day2 寻找道路(road)
    Noip 2014 senior Day2 无线网络发射器选址(wireless)
    Noip2014senior复赛 飞扬的小鸟
    Noip 2014 senior 复赛 联合权值(link)
  • 原文地址:https://www.cnblogs.com/time-read/p/8403957.html
Copyright © 2011-2022 走看看