zoukankan      html  css  js  c++  java
  • python基础-字典

    1. 声明

    字典是另一种可变容器模型,且可存储任意类型对象。

    字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

    d = {key1 : value1, key2 : value2 }
    d2 = {} #声明一个空字典

    键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

    声明一个字典如下:

    d = {1:"audi", 2:"baoma", 3:"benci", "id":"www.ucar.com" }

    2. 访问字典里的值,即查找字典中的元素

    #方法一:dict[key]
    print(d[1])
    print(d["id"])
    #方法二:dict.get(key)
    print(d.get(1))

    3. 向字典中增加元素

    #方法一
    d["name"] = "神州优车"
    #方法二
    d.update(dict2)
    
    #例如:
    dict = {'Name': 'Runoob', 'Age': 7} 
    dict2 = {'Sex': 'female' } 
    dict.update(dict2)
    print ("更新字典 dict : ", dict)
    #结果为:更新字典 dict : {'Name': 'Runoob', 'Age': 7, 'Sex': 'female'}

    4.修改字典中的元素

    d[1] = "audiA6" #key=1已经存在,不存在就会增加

    5.删除字典中的元素

    del d[2]
    d.pop(2)
    d.popitem() # 随机返回并删除字典中的一对键和值(一般删除末尾对)。
    del d   # 删除整个字典
    d.clear() # 清空字典里所有的元素

    6.计算字典中元素的个数

    print(len(d))

    7.把字典转为列表

    print(list(d)) # 把字典中的键转换为列表
    print(list(d.keys())) # 把字典中的键转换为列表
    print(list(d.values())) # 把字典中的值转换为列表
    print(list(d.items()))  # 把字典中的每一个键和值以元组的形式做为列表中的每一个元素: [(1, 'audiA6'), (3, 'benci'), ('id', 'www.ucar.com'), ('name', '神州优车')]

    8.把字典转为字符串

    str(d)

    9.字典遍历

    # 遍历字典的键和值,有两种方式
    for i in d:
        print(i,d[i])
    
    for i,j in d.items():
        print(i,j)
    
    # 只遍历字典的键,有两种方式
    for i in d.keys():
        print(i)
    
    for i in d:
        print(i)
    
    # 只遍历字典的值
    for i in d.values():
        print(i)

    10.把一个序列(字符串、列表、元组)作为键创建一个新字典,序列seq中元素做字典的键,val为字典所有键对应的初始值

    a = ("","","","","")
    print(dict.fromkeys(a))
    #结果:{'我': None, '爱': None, '你': None, '中': None, '国': None}
    
    b = 'abcdefg'
    print(dict.fromkeys(b))
    #结果:{'a': None, 'b': None, 'c': None, 'd': None, 'e': None, 'f': None, 'g': None}
    
    c = [1,2,"alex",'c']
    print(dict.fromkeys(c))
    #结果:{1: None, 2: None, 'alex': None, 'c': None}

    # 注:dict为关键字
  • 相关阅读:
    基于ubuntu10.04的gccarm安装
    面向连接和非面向连接
    多址技术与复用技术
    NAT——网络地址转换
    IP地址与子网掩码的关系
    ISO的7层模型
    比特率与波特率的比较
    C#中GUID的使用
    iframe刷新父页面
    javascript 获取控件坐标
  • 原文地址:https://www.cnblogs.com/janson071/p/9799775.html
Copyright © 2011-2022 走看看