精华内容
下载资源
问答
  • 字典可以存储任意类型的对象,字典中的数据存储形式是:每一个键key对应一个值value,键是唯一的,但是值可以相同。字典用{}来表示,如: d = {"name":"Tom",...

    字典可以存储任意类型的对象,字典中的数据存储形式是:每一个键key对应一个值value,键是唯一的,但是值可以相同。字典用{}来表示,如:

    d = {"name":"Tom","Age":10,"hobby":"swimming"}
    

    关于字典:

    1、键不可变,可使用数字、字符串或元组充当,但是不能使用列表作为键值。
    如:

    d1 = {'1':20}
    d2 = {(2,):30}
    print(d1['1'],d2[(2,)])
    

    输出

    20 30
    

    如果下面这样定义:

    d3 = {[2]:40}
    print(d3[[2]])
    

    此时会出错:

    TypeError: unhashable type: 'list'
    

    2、值可变,可以对键对应的值进行修改。

    索引字典中的值

    #创建字典
    d = {"name":"Tom","Age":10,"hobby":"swimming"}
    #索引
    print(d)
    print(d["name"],d["Age"])
    

    输出

    'name': 'Tom', 'Age': 10, 'hobby': 'swimming'}
    Tom 10
    

    修改字典中的值

    #修改字典中的值
    d["Name"] = "Alex"
    d["Age"] = 20
    print("修改后的值为:",d["Name"],d["Age"])
    

    输出:

    修改后的值为: Alex 20
    

    字典中内置函数
    len() 字典长度
    str() 输出字典以打印的字符串表示
    type() 返回类型
    字典中内置方法

    方法 A说明
    d.clear() 清空字典,所有元素
    d.copy() 浅拷贝字典
    d.fromkeys 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
    d.get(key,default=None) 返回指定键的值,如果值不在字典中返回default值
    dict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值
    key in d 如果键在字典dict里返回true,否则返回false
    d.items() 以列表返回可遍历的(键, 值) 元组数组
    d.keys() 返回一个迭代器,可以使用 list() 来转换为列表
    dict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
    d.update(dict2) 把字典dict2的键/值对更新到dict里
    d.values() 返回一个迭代器,可以使用 list() 来转换为列表
    d.pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
    d.popitem() 随机返回并删除字典中的一对键和值(一般删除末尾对)。

    d.clear()

    dict1= {'name':'Thea','age':13}
    print("原字典:",dict1)
    #清空字典
    dict1.clear()
    print("新字典:",dict1)
    

    输出

    原字典: {'name': 'Thea', 'age': 13}
    新字典: {}
    

    d.copy 浅拷贝
    复制与浅拷贝的区别:
    复制相当于引用,即给原字典起了一个别名,而浅拷贝是,对一级目录直接拷贝,不会改变,而对二级目录是浅拷贝,只是引用。

    #浅拷贝copy
    Alex = [12,'sing']
    Thea = [20,'dance']
    dict1= {'Alex':Alex,'Thea':Thea}
    
    dict_cp1 = dict1
    dict_cp2 = dict1.copy()
    dict1['Alex']= Thea
    print("这是字典dict1:",dict_cp1)
    print("复制 字典dict1:",dict_cp1)
    print("浅拷贝 字典dict1,不会随着原字典改变:",dict_cp2)
    

    输出:

    这是字典dict1: {'Alex': [20, 'dance'], 'Thea': [20, 'dance']}
    复制 字典dict1: {'Alex': [20, 'dance'], 'Thea': [20, 'dance']}
    浅拷贝 字典dict1,不会随着原字典改变: {'Alex': [12, 'sing'], 'Thea': [20, 'dance']}
    

    d.fromkeys()

    #从列表中获取键值创建列表
    key_list =["name","age","hobby"]
    val = "test"
    
    d= {}
    #不指定值
    d = d.fromkeys(key_list)
    print("新字典",d)
    
    #指定值
    d = d.fromkeys(key_list,val)
    print("新字典",d)
    

    输出

    新字典 {'name': None, 'age': None, 'hobby': None}
    新字典 {'name': 'test', 'age': 'test', 'hobby': 'test'}
    

    dict.get(key, default=None)

    dict1= {'name':'Thea','age':13}
    print("获取键值:",dict1.get('name'))
    print("获取键值不存在时返回:",dict1.get('hh'))
    

    key in d

    #key in d 返回true或false
    dict1= {'name':'Thea','age':13}
    print('name' in dict1)
    #返回键值元组
    print("返回键值元组:",dict1.items())
    

    输出

        True
    返回键值元组: dict_items([('name', 'Thea'), ('age', 13)])
    

    d.keys()

    #返回迭代器,转为一个列表
    dict1= {'name':'Thea','age':13}
    print(list(dict1.keys()))
    

    输出

    ['name', 'age']
    

    dict.setdefault(key, default=None)

    print("原字典:",dict1)
    print("返回'name'的值:",dict1.setdefault('name',None))
    print("不存在的键,可以添加,默认值:",dict1.setdefault('gender','man'))
    
    print("新字典:",dict1)
    

    输出:

    原字典: {'name': 'Thea', 'age': 13}
    返回'name'的值: Thea
    不存在的键,可以添加,默认值: man
    新字典: {'name': 'Thea', 'age': 13, 'gender': 'man'}
    

    dict1.update()

    #dict1.update()将dict1中的键值更新到dict2中
    dict1= {'name':'Thea','age':13}
    dict2= {}
    print("更新后的dict2",dict2.update(dict1))
    

    输出:

    更新后的dict2 {'name': 'Thea', 'age': 13}
    

    d.values

    #d.values 返回迭代器
    print("返回一个迭代器:可以转为列表:",list(dict1.values()))
    

    输出:

    返回一个迭代器:可以转为列表: ['Thea', 13]
    

    pop() 和popitem()

    #删除键值,返回被删除的键对应的值
    print("返回被删除的键对应的值:",dict1.pop('age'))
    
    #随机删除一对键值,一般从结尾删
    dict1= {'name':'Thea','age':13}
    print("随机删除字典中的一对键值,返回被删除的键值:",dict1.popitem())
    
    print("随机删除键值的字典:",dict1)
    

    输出:

    返回被删除的键对应的值: 13
    随机删除字典中的一对键值,返回被删除的键值: ('age', 13)
    随机删除键值的字典: {'name': 'Thea'}
    
    展开全文
  • 字典的创建t1 = ('a','b','c') t2 = (100,200,300) lista = zip(t1,t2) ...d3 = dict.fromkeys('abcdefg',0) 字典函数 d4 = {}.fromkeys('xyzabc',100) 字典函数 d5 = dict(lista) 字典工厂函数 d6 = d5.cop

    字典的创建

    t1 = ('a','b','c')
    t2 = (100,200,300)
    lista = zip(t1,t2)
    d = {}  空字典
    d2 = dict() 字典工厂函数
    d3 = dict.fromkeys('abcdefg',0) 字典函数
    d4 = {}.fromkeys('xyzabc',100) 字典函数
    d5 = dict(lista) 字典工厂函数
    d6 = d5.copy()  字典浅拷贝,只有copy.deepcopy()才是真正的深拷贝 
    d7 = dict(aa=100,bb=200) 字典工厂函数
    d8 = dict(**d5) 用字典作为阐述
    d9 = copy.deepcopy(d5) 深拷贝得到字典
    

    字典的遍历

    for key in d9:     直接遍历字典d9中的key
        print key
    
    if 'd' in d9:     可以通过 in 判断key 是否在字典中
        print "d was in d9"
    
    x = d9.get('c')    可以通过get 方法,去取key的值,如果没有这个key,则会默认返回None,如果这里直接使用d9['d'] 则会报异常
    if x is not None:
        print 'c is in d9 '
    
    d9.pop('a')  #若d9 存在 key a,则回返回,如果不存在,则返回None,并且从字典中将这个key删除

    字典的比较

    1.先比较字典的长度
    2.长度一样,比较key
    3.key一样,比较value
    4.完全匹配

    字典的函数方法

    dict.iteritems()
    dict.iterkeys()
    dict.itervalues()
    dict.pop('key1')
    dict.get('key1')
    展开全文
  • 创建字典的方法

    千次阅读 2020-10-19 01:36:42
    c=dict(a=1,b=2,k=90)#通过dict函数创建字典 print© 方法二; di={‘q’:6,‘p’:9,‘l’:0} #直接通过键值对创建字典,{key1:value1,…} print(di) 方法三: #通过zip()函数,将可迭代的对象变为元组的列表,在...

    创建字典的方法:
    方法一;
    c=dict(a=1,b=2,k=90)#通过dict函数创建字典
    print©
    在这里插入图片描述

    方法二;
    di={‘q’:6,‘p’:9,‘l’:0} #直接通过键值对创建字典,{key1:value1,…}
    print(di)
    在这里插入图片描述

    方法三:
    #通过zip()函数,将可迭代的对象变为元组的列表,在用dict()函数转化为字典
    tuple1=[1,3,5,7]
    list1=[2,4,6,8]
    Zip1=zip(tuple1,list1)#[(1,2),(3,4),(5,6)(7,8)]打包成元组的列表
    print(dict(Zip1))#直接转化为字典
    在这里插入图片描述

    方法四
    通过给定的元组和列表直接创建字典。
    A=(0,1)
    B=[3,4]
    可以直接{A:B}。另外,键必须是不可变序列,因为字典中键是惟一的,不可变的。
    在这里插入图片描述

    创建空字典的方法:
    1.Dictionary={}
    2.Dictionary=dict()
    3.Dictionary=dict.fromkeys(list1)#list1只为键的列表
    在这里插入图片描述

    展开全文
  • Python创建字典的4种方法

    万次阅读 多人点赞 2018-09-24 21:34:02
    一、使用大括号来创建字典 person = {"...二、使用关键字参数和类型构造函数创建字典 person = dict(name="张三",age=18,pay=40000,job="Python工程师") 三、使用zip函数将名
    一、使用大括号来创建字典
        person  = {"name":"张三","age":18,"pay":40000,"job":"Python工程师"}
    二、使用关键字参数和类型构造函数来创建字典
        person = dict(name="张三",age=18,pay=40000,job="Python工程师")
    三、使用zip函数将名/值列表链接在一起,来创建字典
        keys = ["name","age","pay","job"]
        values = ["张三",18,40000,"Python工程师"]
        person = dict(zip(keys,values))
    四、使用fromkeys通过一个键序列和所有键的可选初始值来创建字典
        keys = ["name","age","pay","job"]
        person = dict.fromkeys(keys,"?")
    展开全文
  • dict1 = {"sinhaeng":99, "hhjian":999}:创建字典; dict1["sinhaeng"]:字典访问; dict1.get(str):如果没有str这个key,返回None; dict1["sss"] = 999:添加键-值; dict1["sinhaeng"] = 9999:一...
  • 字典内置函数&方法

    2018-07-17 12:11:05
    函数及描述 1 cmp(dict1, dict2) 比较两个字典元素。 2 len(dict) 计算字典元素个数,即键的总数。 3 str(dict) 输出字典可打印的字符串表示。 4 type(variable) 返回输入的变量...
  • 1.常规创建字典 In [1]: dict1 = {'a':1, 'b':2, 'c':3} In [2]: print(dict1) ...2. 利用zip函数和 dict函数创建字典 In [3]: list1 = ['a', 'b', 'c']; list2 = [1, 2, 3]; dict1 = dict(zip(l...
  • python中创建字典的方法和迭代字典的方法 #-*- coding:utf-8 -*- #创建字典的方法 a = {'name':'tom','age':22}#直接生成字典 b = dict(name='tom',age=22)#注意:key键不能用引号,不能写'name'='tom' c = dict...
  • python-使用列表创建字典

    万次阅读 2018-10-22 19:49:02
    本文主要介绍如果将两个列表作为键-值,快速创建字典。   1.使用列表快速生成字典的 #推荐方式: key_list = ['D', 'U', 'B', 'X', 'G', 'M', 'K', 'Y', 'H', 'W'] value_list = [68, 85, 66, 88, 71, 77, 75, ...
  • 使用函数不仅可以简化客户端应用程序的开发和维护,还可以提高应用程序的执行性能(特别适用于统计SQL对字典码的频繁转换)。 函数创建 创建函数语法 create [or replace] function function_name [(parameter_list)...
  • python之字典函数参数

    千次阅读 2017-07-10 16:58:38
    python基础之字典函数参数
  • python中字典的定义及创建字典

    千次阅读 2020-04-23 17:50:35
    一、字典(dictionary) 字典和列表类似,也是可变序列,只是与列表不同,它是无序的可变序列,保存的内容是以“键——值对”的形式存放,这类似于我们使用查找汉字的新华字典,它可以把拼音和汉字串起来,通过拼音...
  • python中字典内置函数的用法解析

    千次阅读 2016-01-29 19:01:06
    python字典内置函数的使用
  • 创建字典的几种方式(全)

    千次阅读 2020-08-04 10:04:55
    2,直接赋值创建字典 dic = {'aaa':1, 'bbb':2, 'ccc':3} 3,通过dict将二元组列表创建为字典 list = [('aaa', 1), ('bbb', 2), ('ccc', 3)] dic = dict(list) 4,通过dict和关键字参数(指的等式例如 spam ...
  • Python创建字典及获取字典键值对

    千次阅读 2019-12-01 18:41:14
    第一部分:创建字典 方法一: 常规方法 如果事先能拼出整个字典,则此方法比较方便 D1 = {‘name’:‘Bob’,‘age’:40} 方法二: 动态创建 如果需要动态地建立字典的一个字段,则此方法比较方便 D2 = {} D2[‘name’]...
  • 函数创建 当我们在Python里定义函数时发生了什么呢? 关键字def有两个功能:它可以创建一个函数对象,然后把这个函数对象赋值给一个变量(即我们的函数名)。...函数属性以字典的形式存储的,键为属性名...
  • 我们可以通过input()方法来获取所需要创建字典的key和value值,并且把他们存储到字典中从而完成字典的创建。示例代码如下: responses = {} does_go_on = True while does_go_on: name = input("What is your name?...
  • Python-Dictionary-创建字典的方式

    千次阅读 2016-12-14 17:55:23
    我们创建字典的方式有很多,根据需求不同,采用合适的方式才能够事半功倍。 我使用的Python3.0 版本,所以较之2.X的版本,新增了解析式创建法。 1.{} 我称这个方法为一个花括号搞定法,此方法适合你知道字典中的...
  • Python创建与调用函数

    千次阅读 2020-03-25 14:47:53
    今天我们来讲Python里的创建与调用函数。 先讲创建函数创建函数使用def关键字,就是define的缩写。 上代码看看吧: def say(info): print(info) 这就是一个名叫say的函数,我们来看看这个函数的结构: def 函数...
  • Python字典内置函数和方法

    千次阅读 2016-09-20 16:08:03
    字典字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中。 格式: dict = {key1 : value1, key2 : value2 } ...字典内置函数: len(dict) 计算
  • from builtins.py def __init__(self, seq=None, **kwargs): # known special case of dict.__init__ """ dict() -> new empty dictionary 新的空字典 dict(mapping) -> new dictionar...
  • python字典和解包函数参数

    千次阅读 2019-02-22 14:55:03
    dict.fromkeys(seq[,val]): 创建一个新字典,以序列seq中元素做字典的key,val为字典所有键对应的初始值 break:在两个循环下,它只跳出当前循环,不会跳出两个循环 关键字参数也可以调用函数,且关键字参数不得...
  • 字典创建、赋值、访问,修改,添加,删除 目录 字典创建、赋值、访问,修改,添加,删除 创建赋值 访问字典的值 实现遍历访问 修改字典 更新和添加新的键值对 删除字典元素 映射类型操作符 标准类型...
  • 列表 元组 集合字典区别与函数用法

    千次阅读 2019-09-25 15:31:25
    理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是python面试中最常见的一个问题。这个问题虽然很基础,但确实能反映出面试者的基础水平。 1.列表(List) 什么是列表呢?我觉得列表就是...
  • python map函数处理字典

    万次阅读 2017-12-07 16:13:07
    map函数返回的是一个list,那如何处理字典呢 >>> map(lambda x: x.upper(), a.values()) ['CHINA', 'SAMY'] 返回字典的方法: >>> a = dict(name='samy',addr='china') >>> dict(zip(a, map(lambda x: x.upper(),...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 225,397
精华内容 90,158
关键字:

创建字典的函数