zoukankan      html  css  js  c++  java
  • Python基础之 一 字典(dict)

    字典:是一种key - value的数据类型。
    语法:info = { key:value }
    特性:无序,key必须唯一(所以天生去重)

    方法如下:
    del dict[key]:删除字典指定键
    len(dict):返回字典的长度
    dict.clear():字典清空
    dict.fromkeys(seq,val=None):创建一个新字典,以seq中的元素为键,val为初始值
    注意:以上通过seq元素创建字典时,相当于浅copy的概念,seq中每个元素在内存中都是指向同一个val的值,会产生当修改一个key值时,其他的也会发生改变。
    所以如果通过以上方法初始化字典时候。他的val值必须只有一层,多层就会出现上面说的现象。
    注意:此方法在python3里已没有(dict.has_key(key):检查字典中是否存在key键,返回布尔值 )
    替代方法是: if key名称 in 字典名
    dict.iteritems():以迭代形式逐行返回键值对,python3没有了
    dict.iterkeys():以迭代形式逐行返回键 ,python3没有了
    dict.itervalues():以迭代形式逐行返回值 ,python3没有了
    dict.pop(key):打印并删除指定键的值
    dict.popitem();随机打印并删除字典中的键值
    dict.update(dict1):将字典dict1键值对添加到字典dict中
    dict.copy():字典浅拷贝
    dict.get(key,default=None):返回字典key对应的值,不存在则返回默认值
    dict.items():返回一个包含所有键,值元组列表
    dict.values():以列表形式显示字典所有值
    dict.keys():以列表形式显示字典所有键
    dict.setdefault(key,default=None):如果key不存在,则使用default赋值,
    循环一般有2种方法:
    1:for i in dict:
    print (i,dict[i])
    2: for k,v in dict.items():
    print(k,v)
    以上2种循环,第一种效率高速度快,第二种效率低下,
    原因:第一种是直接循环字典的键,并从键直接提取值
    第二种是先将字典转换为列表,然后在循环提取。(多一层转换,所以会效率低)

  • 相关阅读:
    HDU 1348 Wall
    HDU 2202 最大三角形
    HDU 2215 Maple trees
    HDU 1147 Pick-up sticks
    HDU 1392 Surround the Trees
    风语时光
    HDU 1115 Lifting the Stone
    HDU 1086 You can Solve a Geometry Problem too
    HDU 2108 Shape of HDU
    HDU 3360 National Treasures
  • 原文地址:https://www.cnblogs.com/zy6103/p/6760615.html
Copyright © 2011-2022 走看看