一、创建字典(关联数组或hash表)

字典由键(key)和对应的值(values)组成。

代码:  dic = { ‘ name‘:1 , ‘ zhang ’:2 , ‘ age‘ :3 , ‘ sex‘ : ‘ man‘}

注意:键与值用冒号(:)隔开,每对用逗号隔开,整体放在花括号中,键必须唯一的

值可以取任何数据类型,但是必须是不可变的。(如:字符串、数值、元素)

访问字典中的值:

代码:print(dic[‘name’])

如果字典里空值则报错。

二、修改字典

向字典添加新内容的方法是添加新的键/值对,修改或者删除已有键/值如下:

代码:

dic = { ‘ name‘:1 , ‘ zhang ’:2 , ‘ age‘ :3 , ‘ sex‘ : ‘ man‘}

dic[ ‘ age‘ ] = 32#修改

dic[‘hobbies’] = ‘computer’#增加新内容(dic[‘键’]=’值’)

三、删除字典元素

能删除单一的元素也能清空字典。

代码:
dic = { ‘ name‘:1 , ‘ zhang ’:2 , ‘ age‘ :3 , ‘ sex‘ : ‘ man‘}

del dic[ ‘ name‘]#删除 name 条目

dic.clear()#清空字典中所有条目

del dic#删除字典

四、字典键的特性

1、不允许同一个键出现两次,创建时如果同一个键被赋值两次,则只有后一个值会被记住

2、键必须不可变,所以可以用数,字符串或者是元组充当,不可以用列表,因为列表可变

五、字典的内置函数&方法

函数

作用

dict.clear()

清空dic字典内容

dict.copy()

复制dic字典

del dic[‘k’]

删除字典中k的条目(不设k值时删除整个字典)

cmp (dict1,dict2)

比较dict1和dict2两个元素

len(dict)

计算字典的个数(即键(key)个数)

str(dict)

输出字典可打印的字符串表示

dict_fruit.popitem()

随机删除字典中的值

dict_fruit[‘k’]

查找k键下的值,不存在则报错

dict_fruit.get(‘k’,def)

get方法查找,存在返回key的值,否则返回def

dict_fruit.keys()

列出所有key(键)

dict_fruit.values()

列出所有values(值)

dict_fruit.items()

以列表返回可遍历的(键, 值) 元组数组

dict_fruit.update(res2)

把res2字典填充到dict_fruit中key的值(中)覆盖

dict_fruit.setdefault(key,def)

创建新key,如果创建的key字典中有则返回原来的key的值

dict_fromkeys([“a”,”b”],”xhl”)

批量生成相同的dey和value的字典

dict_fruit{‘key 1’: values 1,‘key 2’: values 2,‘key 3’: values 3,}


python_字典 学习的更多相关文章

  1. Dictionary Learning(字典学习、稀疏表示以及其他)

    第一部分 字典学习以及稀疏表示的概要 字典学习(Dictionary Learning)和稀疏表示(Sparse Representation)在学术界的正式称谓应该是稀疏字典学习(Sparse Di ...

  2. 字典学习(Dictionary Learning, KSVD)详解

    注:字典学习也是一种数据降维的方法,这里我用到SVD的知识,对SVD不太理解的地方,可以看看这篇博客:<SVD(奇异值分解)小结 >. 1.字典学习思想 字典学习的思想应该源来实际生活中的 ...

  3. 学习人工智能的第五个月[字典学习[Dictionary Learning,DL]]

    摘要: 大白话解释字典学习,分享第五个月的学习过程,人生感悟,最后是自问自答. 目录: 1.字典学习(Dictionary Learning,DL) 2.学习过程 3.自问自答 内容: 1.字典学习( ...

  4. 稀疏编码(sparse code)与字典学习(dictionary learning)

    Dictionary Learning Tools for Matlab. 1. 简介 字典 D∈RN×K(其中 K>N),共有 k 个原子,x∈RN×1 在字典 D 下的表示为 w,则获取较为 ...

  5. 联合CRF和字典学习的自顶向下的视觉显著性-全文解读

    top-down visual saliency via joint CRF anddictionary learning 自顶向下的视觉显著性是使用目标对象的可判别表示和一个降低搜索空间的概率图来进 ...

  6. 字典学习(Dictionary Learning)

    0 - 背景 0.0 - 为什么需要字典学习? 这里引用这个博客的一段话,我觉得可以很好的解释这个问题. 回答这个问题实际上就是要回答“稀疏字典学习 ”中的字典是怎么来的.做一个比喻,句子是人类社会最 ...

  7. 吴裕雄 python 机器学习——数据预处理字典学习模型

    from sklearn.decomposition import DictionaryLearning #数据预处理字典学习DictionaryLearning模型 def test_Diction ...

  8. 零基础学习python_字典(25-26课)

    今天学到后面的知识,突然发现之前学习到的字典列表啥的都有点忘了,打算补一下之前学到的字典,到时候你看的时候,字符串.列表.字典.元祖这几个没啥顺序,刚开始学的时候了解下方法,当然你可以死记硬背下,后面 ...

  9. swift2.0 字符串,数组,字典学习代码

    swift 2.0 改变了一些地方,让swift变得更加完善,这里是一些最基本的初学者的代码,里面涉及到swift学习的最基本的字符串,数组,字典和相关的操作.好了直接看代码吧. class View ...

随机推荐

  1. 10.model/view实例(3)

    任务:3x2的表格,第一个单元格显示当前时间 思考: 1.data函数里面QTime::currentTime()显示当前时间 2.但是这个事件是一个固定的时间,不会变动 3.需要时间变动,View就 ...

  2. 树莓派研究笔记(8)-- 编译lakka v2.1源码

    Lakka越玩越觉得强大.如果要是能自己修改一下代码,实现自定义的一些操作就更好了.还可以修复字体文件,修复在部分机器上自动更换Mac地址导致ip变化的问题. 所以我们来尝试编译这个系统.这篇文章几乎 ...

  3. SDUT 1488 数据结构实验:连通分量个数

    数据结构实验:连通分量个数 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description  在无向图中,如 ...

  4. svn冲突问题详解 SVN版本冲突解决详解

    svn冲突问题详解 SVN版本冲突解决详解 (摘自西西软件园,原文链接http://www.cr173.com/html/46224_1.html) 解决版本冲突的命令.在冲突解决之后,需要使用svn ...

  5. oracle date 和 timestamp区别

    在今天的工作中,学到了以下几个知识点: 一.date和timestamp 的区别 date类型是Oracle常用的日期型变量,他的时间间隔是秒.两个日期型相减得到是两个时间的间隔,注意单位是“天”.例 ...

  6. Joda Time 使用

    Joda Time 使用 对于系统的一些时间操作很是不方便,为了方便转化,有时候用date,有时候用timestmp,有时候用calendar,忍不住想更改了. 但是任务巨大,先把笔记收藏了,后面有机 ...

  7. c#百分比计算

    //此方法得到的百分比后小数太多,不行double percent=Convert.ToDouble(2)/Convert.ToDouble(34); string result=(percent*1 ...

  8. C#单例---饿汉式和懒汉式

    单例模式: 步骤: 1.定义静态私有对象 2.构造函数私有化 3.定义一个静态的,返回值为该类型的方法,一般以Getinstance/getInit为方法名称 单例模式有懒汉和饿汉,最好使用饿汉 1. ...

  9. Django之文件下载

    到目前为止,我们的注意力都在HTML网页上,但是实际上,在网站上除了HTML外还有图片,文件,PDF等等. 首先来看下返回一张图片为例,读取本地磁盘上的一张图片并返回到网页上显示. def test1 ...

  10. Codeforces 917B MADMAX (DP+博弈)

    <题目链接> 题目大意:给定一个DAG图,其中图的边权是给定的字符所对应的ascii码,现在A先手,B后手,每次沿DAG图走一步,但是第i次走的边权一定要大于等于第i-1次走的边权(这里是 ...