• python进阶01 词典


     

    基础教程介绍了基本概念,特别是对象和类。

    进阶教程对基础教程的进一步拓展,说明Python的细节。希望在进阶教程之后,你对Python有一个更全面的认识。

     

    之前我们说了,列表是Python里的一个类。一个特定的表,比如说nl = [1,3,8],就是这个类的一个对象。我们可以调用这个对象的一些方法,比如 nl.append(15)。
    我们要介绍一个新的类,词典 (dictionary)。与列表相似,词典也可以储存多个元素。这种储存多个元素的对象称为容器(container)

     

    基本概念

    常见的创建词典的方法:

    >>>dic = {'tom':11, 'sam':57,'lily':100}

    >>>print type(dic)

    词典和表类似的地方,是包含有多个元素,每个元素以逗号分隔。但词典的元素包含有两部分,,常见的是以字符串来表示键,也可以使用数字或者真值来表示键(不可变的对象可以作为键)。值可以是任意对象。键和值两者一一对应。

     

    比如上面的例子中,‘tom’对应11,'sam对应57,'lily'对应100

     

    与表不同的是,词典的元素没有顺序。你不能通过下标引用元素。词典是通过键来引用

    >>>print dic['tom']

    >>>dic['tom'] = 30

    >>>print dic

     

    构建一个新的空的词典:

    >>>dic = {}

    >>>print dic

     

    在词典中增添一个新元素的方法:

    >>>dic['lilei'] = 99

    >>>print dic

    这里,我们引用一个新的键,并赋予它对应的值。

     

    词典元素的循环调用

    dic = {'lilei': 90, 'lily': 100, 'sam': 57, 'tom': 90}
    for key in dic:
        print dic[key]

     

    在循环中,dict的每个键,被提取出来,赋予给key变量。

    通过print的结果,我们可以再次确认,dic中的元素是没有顺序的。

     

    词典的常用方法

    >>>print dic.keys()           # 返回dic所有的键

    >>>print dic.values()         # 返回dic所有的值

    >>>print dic.items()          # 返回dic所有的元素(键值对)

    >>>dic.clear()                # 清空dic,dict变为{}

     

    另外有一个很常用的用法:

    >>>del dic['tom']             # 删除 dic 的‘tom’元素

    del是Python中保留的关键字,用于删除对象。

     

    与表类似,你可以用len()查询词典中的元素总数。

    >>>print(len(dic))

     

    总结

    词典的每个元素是键值对。元素没有顺序。

    dic = {'tom':11, 'sam':57,'lily':100}

    dic['tom'] = 99

    for key in dic: ...

    del, len()

     

    如果你喜欢这篇文章,欢迎推荐

    « 上一篇:Python基础10 反过头来看看
    » 下一篇:Python进阶02 文本文件的输入输出
    	</div>
    	<div class="postDesc">posted @ <span id="post-date">2012-06-06 10:40</span> <a href="https://www.cnblogs.com/vamei/">Vamei</a> 阅读(<span id="post_view_count">65718</span>) 评论(<span id="post_comment_count">30</span>)  <a href="https://i.cnblogs.com/EditPosts.aspx?postid=2537436" rel="nofollow">编辑</a> <a href="#" onclick="AddToWz(2537436);return false;">收藏</a></div>
    </div>
  • 相关阅读:
    DELPHI 画报表 画表头 stringgrid控件
    蜂巢 Thinking in Agile 我们需要怎样的软件过程(1)
    小博一周年了 将开源进行到底
    Windows Mobile下实现图片的3D效果
    蜂巢 Thinking in Agile 我们需要怎样的软件过程(2)
    Windows 中各种 dll 的导出功能
    以下代码中的两个sizeof用法有问题吗?
    sizeof和strlen
    以下反向遍历array数组的方法有什么错误?
    找错题
  • 原文地址:https://www.cnblogs.com/king8/p/9461457.html
  • Copyright © 2020-2023  润新知