zoukankan      html  css  js  c++  java
  • python学习10字典

    ''''''
    '''
    字典(Dict)是python语言的一个最大的特征
    1.定义:是可变的无序集合,以键值对为基本元素,可以存储各种数据类型
    2.表示:{} 列表:[] 元组 () 字符串 ‘’ “” ‘‘‘ ’’’
    3.元素之间用逗号(,)分割
    4.键值对:{键:对} 键:Key 对:Value -----》 字典属于一对一映射关系的数据类型
    '''
    d1={}
    print(len(d1)) #空字典 len()获取字典元素个数

    '''
    6.字典的键值设置要求
    (1)一个字典对象里面所有的键必须唯一
    '''
    d2={1:'car',2:'bus',2:'train'}
    print(d2)
    '''
    {1: 'car', 2: 'train'}
    说明:当键重复时,只会输出一个,也就是最后的那个
    '''

    ############################################################
    '''
    (2)不能对元素的键进行直接修改
    '''
    d3={'Alan':22,'Tom':23,'Mike':35}
    print(d3)
    d3['Alan']=21
    print(d3)
    '''
    {'Alan': 22, 'Tom': 23, 'Mike': 35}
    {'Alan': 21, 'Tom': 23, 'Mike': 35}
    不能对元素的键进行直接修改,但是我们可以通过下标这种方式修改:字典名[键]=值,如果字典中没有通过这个下标法设置的键,那么就会在这个字典中新增一个键值对,如果有,就修改对应键的值
    '''
    '''
    (3)值可以是Python支持的任何对象
    '''
    '''
    7.字典的基本方法
    (1)字典元素的增加
    1.下标法赋值:上述已经说过了,这里不再赘述
    2.setdefault()方法:使用格式是D.setdefault(k[,d]) 若指定键已经存在,则不会修改键对应的值,而是直接显示已经存在键的值。
    '''
    d4={'Alan':22,'Tom':23,'Mike':35}
    d4.setdefault('Alice',10)
    print(d4)
    d4.setdefault('Alan',24)
    print(d4)
    '''
    (2)字典值查找
    1.通过指定键来查找
    2.get()方法:使用格式是D.get(k[,d])
    '''
    print(d4['Alan']) #查找出对应键的值
    print(d4.get('Alice'))
    '''
    (3)字典值修改
    1.下标法赋值:上述也已经说过了,这里不再赘述
    2.update()方法:使用格式是D.update(D')
    '''
    d5={'Alan':22,'Tom':23,'Mike':24}
    d6={'Alan':32,'Mike':34}
    d5.update(d6) #调用update()方法用d6更新d5
    print(d5) #{'Alan': 32, 'Tom': 23, 'Mike': 34}

    d5.update({'Alice':20}) #也可以通过这种方法增加一个键值对
    print(d5)

    '''
    (4)元素删除
    1.del
    2.pop():使用格式是D.pop(k[,d])
    3.popitem():使用格式是D.popitem()
    Notes:popitem()不能加参数;这个方法是随机删除;会返回一个键值对元组;并在字典里删除对应的元素
    '''
    del(d5['Alice'])
    print(d5)
    d5.pop('Alan')
    print(d5)
    (k1,v1)=d5.popitem()
    print((k1,v1))
    print(d5)
    '''
    (5)字典遍历
    1.items()方法遍历所有键值对:使用格式是D.items()
    2.keys()方法获取键:使用格式是D.keys()
    '''
    for get_L in d4.items():
    print(get_L)
    '''
    结果为:
    ('Alan', 22)
    ('Tom', 23)
    ('Mike', 35)
    ('Alice', 10)
    '''
    for gets in d4:
    print(gets) #遍历所有键
    '''
    结果为:
    Alan
    Tom
    Mike
    Alice
    '''
    for gets1 in d4.keys():
    print(gets1)
    '''
    结果为:
    Alan
    Tom
    Mike
    Alice
    '''
    '''
    3.通过键遍历值
    '''
    for get_key in d4:
    print(d4[get_key])
    '''
    22
    23
    35
    10
    思想为遍历出键,用下标法根据键遍历出值
    '''
    '''
    4.values()方法:获取字典值:使用格式是D.values()
    '''
    for get_value in d4.values():
    print(get_value)
    '''
    22
    23
    35
    10
    '''
    '''
    (6)其他操作方法
    1.in成员操作
    2.clear():D.clear():删除字典变量D中的所有元素
    3.copy()方法:D.copy():深度复制,复制后产生的两个字典变量完全没有关系,互不影响。
    4.fromkeys():D.fromkeys(列表):指定相应键生成空值字典
    '''
    d6={1:'a',2:'b',3:'c',4:'d'}
    if 1 in d6.keys():
    print('yes')
    else:
    print('no')

    d7=d6.copy()
    print(d7)
    print(id(d6))
    print(id(d7))
    '''
    把d6的内容赋值给d7;id()方法是获取字典在内存中的地址;
    结果为
    2660611726144
    2660611727080
    发现地址不一样,则说明通过copy()方法复制的两个字典变量,二者虽然内容相同,但指向不同的地址
    '''
    d8=d7
    print(id(d7))
    print(id(d8))
    '''
    通过上述方法赋值,结果为
    1379303300912
    1379303300912
    说明这种赋值方法,二者将指向同一地址
    '''

    d9={}.fromkeys(['paper','pen','pencil'])
    print(d9)
    '''
    {'paper': None, 'pen': None, 'pencil': None}
    '''
    ####################################################
    '''
    8.字典嵌套
    (1)字典嵌入字典
    (2)列表嵌入字典
    (3)字典嵌入列表
    '''
  • 相关阅读:
    201215-03-19---cocos2dx内存管理--具体解释
    sqlHelper的增删改查
    Java Web的数据库操作(一)
    Myeclipse 中添加mysql的jdbc驱动
    MySQL索引的创建、删除和查看
    搭建Windows下Java Web开发环境
    Qt 格式化字符串
    实现C++模板类头文件和实现文件分离的方法
    Qt Creator实现状态栏显示
    Win7 64位下配置Qt5.3和Wincap
  • 原文地址:https://www.cnblogs.com/wsxcode/p/12300860.html
Copyright © 2011-2022 走看看