内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

Python 字典笔记

2018-04-16 16:45 出处:清屏网 人气: 评论(0

一、字典

1、功能与列表功能一样

2、使用 in 或 not in 判断索引是否存在

birthdays = {'Alice': 'Apr 1', 'Bob': 'Dec 12'}
'Alice' in birthdays # True
'Jack' in birthdays # False

3、使用 values() 获取所有值

spam = {'color': 'red', 'age': 42}
spam # {'red', 42},可以使用 for 循环遍历

4、使用 keys() 获取所有键

spam = {'color': 'red', 'age': 42}
spam # {'age', 'color'},可以使用 for 循环遍历

5、使用 items() 获取所有的键与值,键与值分别放在不现的字典中

spam = {'color': 'red', 'age': 42}
spam # {{'age', 'color'},{'red', 42}},可以使用 for 循环遍历

6、使用 get()获取值,如果值不存在,使用第二个参数作为默认值

picnicItems = {'apples': 5, 'cups': 2}
picnicItems.get('cups', 0) #2
picnicItems.get('orange', 0) #0

7、使用 setdefault()为字典中的键的值,如果键不存在,使用第二个参数设置默认值

spam = {'name': 'Pooka', 'age': 5}
spam.setdefault('color', 'black') # {'name': 'Pooka', 'age': 5, 'color': 'black'}

spam = {'name': 'Pooka', 'age': 5, 'color': 'white'}
spam.setdefault('color', 'black') # {'name': 'Pooka', 'age': 5, 'color': 'white'}

8、使用pprint 格式化打印,pformat() 返回格式化字符串 需要先引入 pprint

import pprint
pprint.pprint(dirc) # 打印格式化后的结果
pprint.pformat(dirc) # 返回格式化后字符串

二、字典与列表对比

1、和列表一样,有许多值(表项)

2、字典的索引可以有不同类型数据,而列表只是整数

3、列表使用中括号 [],字典使用花括号 {}

myCat = {'size': 'fat', 'color': 'gray', 'disposition': 'loud'} # 字典
myCat = ['fat', 'gray', 'loud'] # 列表

4、字典的索引不排序,列表的索引是排序

三、案例

1、物品清单整理

def display_inventory(inventory):
    print("Inventory:")
    item_total = 0
    for k, v in inventory.items():
        print(str(v) + ' ' + k)
        item_total += v
    print("Total number of items: " + str(item_total))

'''
Inventory:
45 gold coin
1 rope
1 ruby
1 dagger
Total number of items: 48
'''


def add_to_inventory(inventory, added_items):
    # your code goes here
    for i in added_items:
        if i in inventory:
            inventory[i] += 1
        else:
            inventory[i] = 1
    return inventory

inv = {'gold coin': 42, 'rope': 1} # 字典
dragon_loot = ['gold coin', 'dagger', 'gold coin', 'gold coin', 'ruby'] # 列表

inv = add_to_inventory(inv, dragon_loot)
display_inventory(inv)
分享给小伙伴们:
本文标签: Python字典

相关文章

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

CopyRight © 2015-2016 QingPingShan.com , All Rights Reserved.

清屏网 版权所有 豫ICP备15026204号