python中的dict,python3.7 字典 dict 有序
目录1。字典功能2。字典内置函数3。字典内置方法4。方法添加、删除、更改和创建4来设置默认值5。字典排序6。字典抄浅抄深抄7。字典遍历键遍历值遍历键和值8。函数字典传递参数9。词典推导
1.Dictionary特性Dictionary是另一个变量容器模型,可以存储任何类型的对象。
字典中的每个键值(key=value)对由冒号(:)分隔,每对由逗号(,)分隔。整本字典都包括在花括号里。
例如:d={key1: value1,key2 value2}键必须唯一,但值不必唯一。
同一个键不允许出现两次。如果在创建期间同一个键被分配了两次,将会记住后一个值。
2.字典内置函数1 cmp(dict1,dict2)比较两个字典元素。Len (dict)统计字典元素的数量,即键的总数。Str (dict)输出字典可打印的字符串表示。4 type(variable)返回输入变量类型,如果变量是字典,则返回字典类型。
3.字典内置方法1ddict.clear()删除字典中的所有元素。
返回一个字典的浅拷贝。
3 dict.fromkeys(seq[,val])创建一个新字典,使用序列seq中的元素作为字典的键,val作为字典所有键对应的初始值。
4 dict.get(key,default=None)返回指定键的值,如果该值不在字典中,则返回默认值。
5 dict.has_key(key)如果字典dict中的键返回true,否则返回false。
6 dict.items()以列表形式返回可遍历(键,值)元组的数组。
7 dict.keys()以列表形式返回一个字典的所有键。
8 dict.set default (key,default=none)类似于get(),但如果字典中不存在该键,则会添加该键,并将值设置为default。
9 dict.update(dict2)将字典dict2的键/值对更新为dict。
1ddict.values()以列表形式返回字典中的所有值。
1pop (key [,default])删除字典中给定key key对应的值,返回值为删除后的值。必须给出密钥值。否则,将返回默认值。
2ppopItem()随机返回并删除字典中的一对键和值。
4.方法的应用
添加cat dict 1 . py
#!/usr/bin/python
#!-编码:utf-8 -
dic1={ 年龄:18,姓名:亚历克斯,爱好:女孩 }
dic2={1:111 , 2:222}
dic2={1:111 , name:222}
dic1.update(dic2)
打印(dic1)
打印(dic2)
对于dic2中的k:#相当于update()
dic1[k]=dic2[k]
打印dic1
[root @ localhost dict]$ python dict 1 . py
{1: 111 ,爱好: 女孩,年龄:18,姓名: 222}
{1: 111 ,姓名: 222}
{1: 111 ,爱好:女孩,年龄:18,姓名: 222}第二种
dic2={1:111 , 2:222}
dic2[xx]=cccc
打印dic2$ python dict15.py
{1: 111 , xx: cccc , 2: 222}
delpop( key )pop item()clear()cat dict 3 . py
#!/usr/bin/python
# -*-编码:UTF-8 -*-
dict={Name: Zara , Age: 7, Class: First , weight: 56, gender : man };
del dict[ Name ];#删除关键字为“Name”的条目
打印字典
Print(dict.pop(Age)) #删除字典中指定的键值对,并返回键值对的值。
ret=dict.pop(Class )
打印(ret)
打印(字典)
A=dict.popitem() #随机删除一组键值对,返回值为tuple。
印刷(一,字典)
dict . clear();#清空字典中的所有条目
del dict#删除字典
打印字典
[root @ localhost dict]# python dict 3 . py
{ 性别:男性,年龄:7,体重:56,阶级:第一 }
七
第一
{ 性别:男,体重:56}
((性别,男人,{ 体重:56})
“字典”类型
更改为$ cat dict2.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={Name: Zara , Age: 7, Class : First };
dict[ Age ]=8;#修改现有的键值
dict[学校]=DPS学校;#添加新的键值对
print dict[Age]:,dict[ Age ];
print dict[学校]:,dict[学校];
[root @ localhost dict]$ python dict 2 . py
字典[年龄]: 8
学校:DPS学校
查找$ cat dict4.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={age: 18, name: alex , hobby: girl}
打印(字典[名称])
print(list(dict.keys()))
print(list(dict.values()))
print(list(dict.items()))
it=dict.iteritems()
打印出来
打印dict.get(姓名,女孩)
打印dict.get(e ,18)
如果字典中的"名称:#等同获取()
打印字典[名称]
否则:
打印"无"
[root@localhost字典]$ python字典4.py
亚历克斯
[爱好,年龄,姓名]
[女孩,18,亚历克斯]
[(爱好,女孩,(年龄,18),(姓名,亚历克斯)]
0x7f93657ad418处的字典-项目迭代器对象
亚历克斯
18
亚历克斯
创dict.fromkeys()
$ cat dict5.py
#!/usr/bin/python
seq=(姓名,年龄,性别)
dict=dict.fromkeys(seq)
"打印"新词典:%s % str(字典)
dict=dict.fromkeys(seq,10)
"打印"新词典:%s % str(字典)
[root @ localhost字典]$ python字典5。巴拉圭
新词典:{ 年龄:无,姓名:无,性别:无}
新词典:{ 年龄:10,姓名:10,性别:10}
四设置默认值$ cat dict6.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={}
dict.setdefault(a )
打印字典
字典[a]=苹果
dict.setdefault(a , default )
打印字典
[root@localhost字典]$ python字典6.py
{a :无}
{a :苹果 }
5.字典排序$ cat dict7.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={a :苹果, b :葡萄, c :桔子, d :香蕉 }
#按照键排序
打印排序的(dict.items(),key=lambda d: d[0])
#按照价值排序
打印排序的(dict.items(),key=lambda d: d[1])
[root @ localhost dict]$ python dict 7。巴拉圭
[(a ,苹果,( b ,葡萄,( c ,橘子,( d ,香蕉)]
[(a ,苹果)、( d 、香蕉)、( b 、葡萄)、( c 、橘子)]
6.字典拷贝
浅拷贝$ cat dict8.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={a :苹果, b :葡萄 }
dict2={c : orange , d : banana}
dict2=dict.copy()
打印字典2
[root @ localhost字典]$ python字典8。巴拉圭
{a :苹果, b :葡萄 }
深拷贝$ cat dict9.py
#!/usr/bin/python
#!-编码:utf-8 -
导入副本
dict={a : apple , b : {g : grape , o : orange}}
dict2=copy.deepcopy(dict)
dict3=copy.copy(dict)
print(copy1==copy2) # True
打印(副本一是副本2) #假
dict2[b][g]=orange #dict2深拷贝相当于独立目标
打印字典
dict3[b][g]=orange
打印字典
[root@localhost字典]$ python字典9.py
真实的
错误的
{a :苹果, b: {o :桔子, g :葡萄 }}
{a: apple , b: {o: orange , g: orange}}
7.字典遍历
遍历keycat dict10.oy
#!/usr/bin/python
#!-编码:utf-8 -
dict={a :苹果, b :香蕉, c :葡萄, d :橘子 }
对于字典中的k:
打印k
对于字典中的k:
打印k,
对于dict.iterkeys()中的键:
打印键
对于关键字()中的关键:
打印密钥,
[root @ localhost dict]# python dict 10。oy
a
c
b
d
a c b d a
c
b
d
甲乙丙丁
遍历值$ cat dict11.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={a :苹果, b :香蕉, c :葡萄, d :橘子 }
对于字典中的k:#遍历价值
打印字典[k]
对于字典中的k:#遍历价值不换行
打印字典[k],
对于dict.itervalues()中的值:
打印值,
对于dict.values()中的值:
# d.values() - [2,1,3]
打印值
[root@localhost字典]$ python字典11.py
苹果
葡萄
香蕉
橙色的
苹果葡萄香蕉橘子苹果葡萄香蕉橘子苹果
葡萄
香蕉
橙色的
遍历键和values$ cat dict12.py
#!/usr/bin/python
#!-编码:utf-8 -
dict={a :苹果, b :香蕉, c :葡萄, d :橘子 }
对于键,dict.iteritems()中的值:
# d.iteritems:(键,值)项上的迭代器
打印键,对应于,字典[键]
对于键,dict.items()中的值:
# d .项():d(键,值)对的列表,为二元组
# [(y ,2),( x ,1),( z ,3)]
打印关键字,"对应于",值
[root@localhost字典]$ python字典12.py
a对应苹果
c对应葡萄
b对应香蕉
d对应橙色
a对应苹果
c对应葡萄
b对应香蕉
d对应橙色
8.函数字典传参$ cat dict13.py
#!/usr/bin/python
#!-编码:utf-8 -
dic={m: 1, n: 2, q: 3}
定义dics(qwe):
打印声波
dics(dic)
[root@localhost字典]$ python字典13.py
{“q”:3,“m”:1,“n”:2 }
9.字典演绎语法1:
关键字:字典中的关键字
值:字典中的值
Dict.items (): sequence
条件:条件表达式
Key_exp:在for循环中,如果条件表达式条件成立(即条件表达式成立),则返回相应的键和值,并作为key _ exp和value _ exp进行处理。
Value_exp:在for循环中,如果条件表达式条件成立(即条件表达式成立),则返回对应的key,Value,并使之为key _ exp,用value _ exp { key _ exp:value _ exp for key,value In dict . items()if condition }语法2:
关键字:字典中的关键字
值:字典中的值
Dict.items (): sequence
条件:条件表达式
Key_exp:在for循环中,如果条件表达式条件成立(即条件表达式成立),则返回相应的键和值,并作为key _ exp和value _ exp进行处理。
Value_exp1:在for循环中,如果条件表达式条件成立(即条件表达式成立),则返回相应的键和值,并作为key _ exp和value _ exp1进行处理。
Value_exp2:在for循环中,如果条件表达式条件无效(即条件表达式无效),则返回对应的key,Value并do key _ exp,value _ exp:value _ exp1 if condition else value _ exp 2 for key,value in dict . items()} $ cat dict 14 . py。
#!/usr/bin/python
#!-编码:utf-8 -
Dict1={a: 10, b: 20, c: true, d: Hello World , e: Python教程 }
dict2={key:value for key,value in dict 1 . items()if key . is lower()}
打印(字典2)
dict 3={ key . lower():key的值,dict1.items中的值()}
打印(字典3)
dict 4={ key:value if key . I supper()else error for key,value in dict1.items() }
打印(字典4)
[root @ localhost dict]$ python 3.8 dict 14 . py
{a: 10, e: python教程 }
{A: 10, B: 20, C: true, D: Hello World , E: Python教程 }
{a: error , B: 20, C: True, D: hello world , e: error}
来自
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。