美文网首页
Python 基础知识全篇-字典(Dictionary)

Python 基础知识全篇-字典(Dictionary)

作者: BABYMISS | 来源:发表于2020-05-20 19:46 被阅读0次

    字典定义

    1.字典是存储信息的一种方式。

    2.字典以键-值对存储信息,因此字典中的任何一条信息都与至少一条其他信息相连。

    3.字典的存储是无序的,因此可能无法按照输入的顺序返回信息。

    Python 中定义字典

    dictionary_name = {key_1: value_1, key_2: value_2}

    为了更明显的显示数据,通常写成下面的格式:

    dictionary_name = {key_1: value_1,

                      key_2: value_2

                      }

    字典的基本用法

    定义一个字典:

    把 list、dictionary、function 的解释写成一个字典,请按下面的格式输出 dictionary 和 function 的定义

    python_words = {'list': '相互没有关系,但具有顺序的值的集合',

                    'dictionary': '一个键-值对的集合',

                    'function': '在 Python 中定义一组操作的命名指令集',

                    }

    print("\n名称: %s" % 'list')

    print("解释: %s" % python_words['list'])

    字典的基本操作

    逐个输出字典中的词条过于麻烦,因此可以使用循环输出

    # name 和 meaning 可以随意该名称,试试改成 word 和 word_meaning

    for name, meaning in python_words.items():

        print("\n名称: %s" % name)

        print("解释: %s" % meaning)

    # 还有几种其他的输出方式,动手试一下。

    print("***********************************************")

    for word in python_words:

        print("%s" % word)

    print("***********************************************")

    for word in python_words.keys():

        print(word)

    print("***********************************************")

    for meaning in python_words.values():

        print("值: %s" % meaning)

    print("***********************************************")

    for word in sorted(python_words.keys()):

        print("%s: %s" % (word, python_words[word]))

    给字典加入新的键-值对:

    # 定义一个空字典

    python_words = {}

    # 给字典加入新项(词条):使用 字典名[键名] = 值 的形式可以给字典添加一个键-值对

    python_words['Joker'] ='会玩 LOL'

    python_words['Burning'] = '会玩 DOTA'

    python_words['Elingsama'] = '会玩炉石传说'

    def showMeanings(dictionary):

        for name, meaning in dictionary.items():

            print("\n名称: %s" % name)

            print("解释: %s" % meaning)

    修改字典中的值:

    # 使用 字典名[键名] = 新值 的形式更改已经存在的键-值对

    python_words['Joker'] = 'LOL 的恶魔小丑'

    print('\nJoker: ' + python_words['Joker'])

    删除字典中的项:

    # 返回 Joker 对应的值,同时删除 Joker 的键-值对

    _ = python_words.pop('Joker')

    # 删除 Buring 的键-值对

    del python_words['Burning']

    print(_)

    修改键名:

    # 1.创建一个新键

    # 2.将要更换键名的值赋给新键

    python_words['elingsama'] = python_words['Elingsama']

    del python_words['Elingsama']

    showMeanings(python_words)

    嵌套

    嵌套包括把列表或字典放在另一个列表或字典中。

    值为列表的字典

    favorite_numbers = {'eric': [3, 11, 19, 23, 42],

                        'ever': [2, 4, 5],

                        'willie': [5, 35, 120],

                        }

    通过 字典名[词条名][词条内位置] 访问

    print(favorite_numbers['eric'][0])

    值为字典的字典

    sparse_matrix = {}

    sparse_matrix[0] = {1: 12.3, 23: 25.5}

    sparse_matrix[1] = {3: 12.0, 15: 25.5}

    # 打印出来看下上述字典的样子

    print('sparse_matrix = {')

    for key, value in sparse_matrix.items():

        print(key,':',value)

    print('}')

    # 通过 字典名[词条名][词条内属性名] 访问

    print(sparse_matrix[0][23])

    虽然一层嵌套很有用,但是随着层级的增多,嵌套难度会增大。Python 中一些其他的结构,比如类,也可以有效的把数据组织成某种结构。如果从数据库或者其他地方获得了很深的嵌套数据,处理起来就会很麻烦,因此尽量控制嵌套的深度很有必要。

    相关文章

      网友评论

          本文标题:Python 基础知识全篇-字典(Dictionary)

          本文链接:https://www.haomeiwen.com/subject/ybxoohtx.html