首页 >> 奇闻异事

yodaodict

2024-03-05 奇闻异事 2 作者:网友投稿

字典(dict)是一种非常有用的复合数据结构,是一种无序、可变的序列,字典元素由键值对组成,这些键值对之间用逗号分隔。在键值对中,键和值由冒号“:”分隔。

yodaodict

Python字典主要特征:

通过键而不是通过索引来读取元素,字典是无序的序列,不存在索引;字典是可变的,并且可以任意嵌套;字典中的键必须唯一,不能修改,类型可以是数字、字符串或者元组,不能使用列表。

定义字典

字典通过将以逗号分隔的“键值对列表括在大括号“{}”中来定义字典。每个键与其关联的值使用冒号“:”分隔开。

格式:

d={\n:,\n:,\n.\n.\n.\n:\n}

下面定义了一个字典,该字典包含省会信息:

shenghui={"shandong":"jinan","jiangsu":"nanjing","jilin":"changchun"}

还可以使用内置函数dict()构造字典,参数应该是一系列键值对。

>>>shenghui=dict([("shandong","jinan"),("jiangsu","nanjing"),("jilin","changchun")])\n>>>print(shenghui)\n{'shandong':'jinan','jiangsu':'nanjing','jilin':'changchun'}\n\n#增量方式创建字典\n>>>dict2={}\n>>>dict2["级部"]="初一"\n>>>dict2["班级"]=["一班","二班"]\n>>>dict2\n{'级部':'初一','班级':['一班','二班']}字典基本操作

通过在方括号"[]"中指定其相应的键,从字典中检索值。

#访问字典\n>>>shenghui=dict([("shandong","jinan"),("jiangsu","nanjing"),("jilin","changchun")])\n>>>shenghui["shandong"]\n'jinan'\n>>>shenghui["jiangsu"]\n'nanjing'\n\n#更改字典的值\n>>>shenghui=dict([("shandong","jinan"),("jiangsu","nanjing"),("jilin","changchun")])\n>>>shenghui["shandong"]="qingdao"\n>>>shenghui["shandong"]\n'qingdao'\n\n#删除字典的键值\n>>>shenghui={"shandong":"jinan","jiangsu":"nanjing","jilin":"changchun"}\n>>>delshenghui["shandong"]\n>>>shenghui\n{'jiangsu':'nanjing','jilin':'changchun'}\n

字典没有索引,所以使用索引会出错。下面的示例,看起来像一个数字索引,但事实并非如此,只是字典的键使用了数字,还是使用键来访问值。

>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>dict1[0]\n'a'\n>>>dict1[1]\n'b'字典相关函数方法

#keys()返回字典键的列表\n>>>dict2={'级部':'初一','班级':['一班','二班']}\n>>>print(dict2.keys())\ndict_keys(['级部','班级'])\n\n#items()返回一个元组列表,这些元组由字典中的键值对组成\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>print(dict1.items())\ndict_items([(0,'a'),(1,'b'),(2,'c'),(3,'d')])\n\n#get()访问字典中的值\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>print(dict1.get(1))\nb\n\n#clear()清除字典中的所有元素\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>dict1.clear()\n>>>print(dict1)\n{}\n\n#copy()返回字典的副本\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>dict2=dict1.copy()\n>>>print(dict2)\n{0:'a',1:'b',2:'c',3:'d'}\n\n#pop()从字典中删除指定元素并返回指定的元素\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>m=dict1.pop(0)\n>>>print(m)\na\n>>>print(dict1)\n{1:'b',2:'c',3:'d'}\n\n#popitem()从字典中删除最后插入的键值对,并将其作为元组返回。\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>m=dict1.popitem()\n>>>print(m)\n(3,'d')\n>>>print(dict1)\n{0:'a',1:'b',2:'c'}\n\n#setdefault()返回键的值(如果键在字典中)。否则,它会在字典中插入具有默认值的键\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>dict1.setdefault(3)\n'd'\n>>>dict1.setdefault(4,'e')\n'e'\n>>>dict1\n{0:'a',1:'b',2:'c',3:'d',4:'e'}\n\n#update()使用另一个字典键值对元素更新字典\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>dict2={3:'dd'}\n>>>dict1.update(dict2)\n>>>print(dict1)\n{0:'a',1:'b',2:'c',3:'dd'}\n\n#values()返回字典的值\n>>>dict1={0:'a',1:'b',2:'c',3:'d'}\n>>>print(dict1.values())\ndict_values(['a','b','c','d'])\n\n#fromkeys()返回具有键映射和特定值的字典\n>>>d={'a','b','c','d'}\n>>>print(dict1.fromkeys(d))\n{'c':None,'b':None,'d':None,'a':None}\n>>>print(dict2.fromkeys(d,1))\n{'c':1,'b':1,'d':1,'a':1}\n\n#"|"合并运算符可以合并字典,Python3.9引入\ndict1={0:'a',1:'b',2:'c',3:'d'}\ndict2={4:'e'}\ndict3=dict1|dict2\nprint(dict3)\n{0:'a',1:'b',2:'c',3:'d',4:'e'}\n\n#"|="更新运算符更新字典,如果键重复,更新值,否则,插入新键值,Python3.9引入\ndict1={0:'a',1:'b',2:'c',3:'d'}\ndict2={4:'e'}\ndict1|=dict2\nprint(dict1)\n{0:'a',1:'b',2:'c',3:'d',4:'e'}\n\ndict1={0:'a',1:'b',2:'c',3:'d'}\ndict2={3:'e'}\ndict1|=dict2\nprint(dict1)\n{0:'a',1:'b',2:'c',3:'e'}

tags:

关于我们

轻轻日常百科,分享学习知识网,精彩生活时尚百科。

最火推荐

小编推荐

联系我们


Copyright Your xseozz.com Some Rights Reserved.
Powered By Z-BlogPHP.