zoukankan      html  css  js  c++  java
  • python实践项目三:将列表添加到字典

    1、创建一个字典,其中键是字符串,描述一个物品,值是一个整型值,说明有多少该物品。例如,字典值{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着有 1 条绳索、 6 个火把、 42 枚金币等。

    2、写一个名为 displayInventory()的函数,显示出字典中所有物品及其数量,并统计出总数量

    3、写一个名为 addToInventory(inventory, addedItems)的函数, 其中 inventory 参数是一个字典, 存储物品清单, addedItems 参数是一个列表,存储需要更新的物品。addToInventory()函数应该返回一个字典,表示更新过后的物品清单。

    代码一:

     1 #!/usr/bin/python
     2 # -*- coding: UTF-8 -*-
     3 #打印字典
     4 def displayInventory(inventory):
     5     print 'Inventory:'
     6     item_total=0
     7     for k,v in inventory.items():
     8         print str(v)+' '+k
     9         item_total+=v
    10     print 'Total number of items:'+str(item_total)
    11 #列表添加到字典
    12 def addToInventory(inventory,addItems):
    13     for k in addItems:
    14         if k in inventory.keys():
    15             inventory[k]+=1
    16         else:
    17             inventory[k]=1
    18     return  inventory
    19 
    20 #初始字典
    21 inv={'gold coin':42,'rope':1}
    22 #需要添加的列表
    23 dragonLoot=['gold coin','dagger','gold coin','gold coin','ruby']
    24 #将列表添加到字典
    25 inv=addToInventory(inv,dragonLoot)
    26 #显示更新后的字典
    27 displayInventory(inv)

    显示结果:

     代码二(实现同样功能):

     1 #!/usr/bin/python
     2 # -*- coding: UTF-8 -*-
     3 def displayInventory(inven):
     4     print "Inventory:"
     5     item_total=0
     6     for k,v in inven.items():
     7         print str(v)+" "+k
     8         item_total+=v
     9     print "Total number of the items: "+str(item_total)
    10 
    11 def addListToInventory(inven,addedItems):
    12     for i in range(len(addedItems)):
    13         if addedItems[i] in inven.keys():
    14             inven[addedItems[i]]+=1
    15         else:
    16             inven.setdefault(addedItems[i],1)
    17     return inv
    18 inv={'gold coin':42,'rope':1}
    19 addedList=['gold coin','dagger','gold coin','gold coin','ruby']
    20 inv=addListToInventory(inv,addedList)
    21 displayInventory(inv)

    运行结果:

  • 相关阅读:
    UIPasteboard 粘贴板
    UIViewController没有随着设备一起旋转的原因
    UIButton 应用选择状态(附:UIButton 常用状态)
    WebService 中参数为枚举时引发的血案
    设计模式(1)之面向对象设计原则 阿正
    2012年年终总结 阿正
    生活工作如登山 阿正
    感谢我的技术总监 阿正
    尽孝要尽早 阿正
    我老了吗?不 你依然年轻 阿正
  • 原文地址:https://www.cnblogs.com/heyangblog/p/10995483.html
Copyright © 2011-2022 走看看