zoukankan      html  css  js  c++  java
  • Python学习笔记(一)—第三天(好玩游戏物品清单)

      第一篇文章,今天是学习Python的第三天,学到了字典的相关知识,因为基础薄弱,估计算是相当慢了吧。

    列表到字典的函数——好玩游戏物品清单

    假设政府一条龙的战利品表示为这样的字符串列表:

    dragonLoot = ['gold coin','dagger','gold coin','gold coin','ruby']

      写一个名为addToInventory(inventory,addedItems)的函数,其中inventory参数是一个字典,表示玩家的物品清单,addedItems参数是一个列表,就像dragonLoot。

    addToInventory}()函数应该返回一个字典,表示更新过的物品清单。列表可以包含多个同样的项。

    将输出如下:

    inventory:
    45 gold coin
    1 rope
    1 dagger
    1 ruby
    Total number of item: 48

    代码如下:

     1 def displayInventory(inventory): #展示背包
     2     print('inventory:')
     3     item_total = 0
     4     for k,v in inventory.items():
     5         print (str(v)+' '+k)
     6         item_total += v
     7         
     8     print ("Total number of item: " + str(item_total))
     9 
    10 def addToInventory(inventory,addedItems): #更新背包
    11     
    12     for i in range(len(addedItems)):    #列表循环
    13         if addedItems[i] not in inventory:        
    14             inventory.setdefault(addedItems[i],1)            #字典里原来不存在的物品,新增对应的key以及value=1
    15         else:
    16             inventory[addedItems[i]] += 1                    #字典里已经存在的,则value+1        
    17     return inventory
    18     
    19 inv = {'gold coin':42,'rope':1}    #初始背包
    20 dragonLoot = ['gold coin','dagger','gold coin','gold coin','ruby']    #Boss掉落的物品列表
    21 inv = addToInventory(inv,dragonLoot)   #更新后的背包
    22 displayInventory(inv)    

    输出的结果正确。

      因为刚刚开始学习Python,仅仅这几行写得都比较吃力了。现在写得应该还很稚嫩,等以后熟悉了,再回头看看,是否可以优化。

    PS:北方都下雪了,朋友圈里各种秀雪景,深圳却是滴滴答答的雨下个不停,也不错哦!

    帘外雨潺潺由此而来。

  • 相关阅读:
    echarts动态设置主体颜色
    spring security session
    Spark RDD函数:
    MapReduce TOP n
    feign 使用示例
    trie树
    动态修改注解(annotation)值
    golang插件
    Kafka Streams Example
    tcp并发(c18w)
  • 原文地址:https://www.cnblogs.com/fqxtony/p/8215339.html
Copyright © 2011-2022 走看看