
1、首先建立一个新的字典
2、调用updata()函数,把新字典里面的键值对更新到dict里
3、打印dict,字典添加成功。
结果如下
(1)首先,python 中存储和读取二维字典dict;则是利用嵌套存储字典的方式
输出内容为:
perl 中的使用没有python 方便, 涉及到 二维hash 的 字典,需要说明一种写法perl 中写法比较多
等效于
已知 key1,想遍历 key2 涉及到 解引用 的方法, 其实就是把 hashref(ARRAY(0x1dd97f0))转换为真正的目标内嵌的hash,对于python 的结果 ,获得{'bbb': 'value'} 这个hash
补充解法, 将下列符号放在 内容是reference 的变量 前面 就 代表将这个reference 变成这个类型
% 代表整个 hash 哈希,使用{} 代表 (python dict)
@ 代表整个 array 数组,使用 [] 代表 (python list)
$ 代表 一个标量(python 中普通变量)
& 代表一个子函数(python 中 def 函数)
另外的 也可以直接用 ->符号解
补充测试
返回内容为:
参考:
Perl中的引用和解引用
Perl – 遍历二维Hash
创建一个空字典自需要一对大括号即可,从已有的键-值对映射或关键字参数创建字典需要使用 dict 函数(类)
把一个列表转为字典,列表的每一项都是长度为2的序列。
还可使用 关键字实参 (**kwargs)来调用这个函数,如下所示:
字典的基本 *** 作与序列十分相似:
字典与序列的不同:
方法 clear 删除所有的字典项(key-value)。
复制,得到原字典的一个新副本。
效果等同于调用 dict(d) 创建新字典。
copy() 执行的是 浅复制 ,若字典的值是一个可变对象,那么复制以后,相同一个键将关联到同一个对象,修改该对象,将同时修改两个字典。
模块copy中的函数deepcopy 可执行深复制。
方法fromkeys 创建一个新字典,其中包含指定的键,且每个键对应的值都是None,或者可以提供一个i额默认值。
方法get 为访问字典项提供了宽松的环境。通常,如果你试图访问字典中没有的项,将引发错误,而get直接返回None,或者可设置默认返回值。
当字典中不存在指定键时, setdefault(k,v) 添加一个指定键-值对;且返回指定键所关联的值。
这三个方法返回值属于一种名为 字典视图 的特殊类型。字典视图可用于迭代。另外,还可确定其长度以及对其执行成员资格检查。
这三个方法自大的特点是不可变,当你的接口试图对其他用户提供一个只读字典,而不希望他们修改的时候,这三个方法是很有用的;而且当原字典发生改变时,这些方法返回的对象也会跟着改变。
方法 pop 可用于获取与指定键相关联的值,并将该键-值对从字典中删除。
popitem随机删除一个键-值对,并返回一个二维的元组 (key, value) ,因为字典是无序的,所以其d出的顺序也是不确定的。
书上说,这个方法在大数据量时执行效率很高,但没有亲测。
方法update 使用一个字典中的项来更新另一个字典。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)