精华内容
下载资源
问答
  • Python字典的小练习

    2019-01-08 23:28:58
    题目: "The payment will be made in the following month after the shipment"一字符串,问: ...我们要先将这段字符串中的字符循环添加到字符串中,然后判断字典中是否这么一...

    题目:

    有"The payment will be made in the following month after the shipment"一个字符串,问:
    这串字符串中每个字符出现的次数是多少次?(要求返回结果是字典)

    思路

    • 首先我们要来确定一下字典的概念:键必须独一无二,所以我们不用担心我们判断的值是否会重复
    • 我们要先将这段字符串中的字符循环添加到字符串中,然后判断字典中是否有这么一个键,如果有就将他的值加1,如果没有就给这个键的值为1
    		#这个是一个新的字符串
    		s = "The payment will be made in the following month after the shipment"
    		#创建一个新的字典
    		d = {}
    		#将字符串中的字符进行遍历
    		for i in s:
    		    #得到了想要的字符
    		    print(i)
    		    #将字符放入到字典中
    		    if i in d:
    		        #这段代码的含义就是如果d[i]这个键对应的值是在我们的字典当中的话,那么d[i]对应的值就加1
    		        d[i] = d[i]+1
    		    else:
    		        #否则就将d[i]这个键加入到字典中并给值为1
    		        d[i] = 1
    		print(d)
    

    除了这一种写法之外,还有另一种写法较为便捷,虽然我现在也不是特别清楚是什么原理,但是代码我是可以读懂的

    		#这个是一个新的字符串
    		s = "The payment will be made in the following month after the shipment"
    		#创建一个新的字典
    		c = {}
    		#将字符串中的字符进行遍历
    		for i in s:
    		#这段代码的意思就是c[键]中的值如果在c中,那么就将键中的值加1,否则就=1
    		    c[i] =  (c[i]+1) if (i in c)  else 1
    		print(c)
        
    

    还有一种方法是运用到我下面讲的字典的fromkeys()的方法

    ##第三种方法
    	s = "The payment will be made in the following month after the shipment"
    	#先将字符串转化成列表
    	l = list(s)
    	#再用我下面的方法将列表生成字典,并将每个键赋值为0
    	d = dict.fromkeys(l,0)
    	for i in l:
    	#循环判断如果d.get(i)获得了这个键的值大于或者等于0的话就进去将值加1
    	    if d.get(i)>=0:
    	        d[i] = d[i]+1
    	print(d)
    

    有知道第二种方法的实现原理的可以评论告诉我,献丑了!!

    字典知识回顾

    • 字典的创建
    	#创建字典字典
    	d = {}
    	d = dict()
    
    • 字典的特征
      1> 字典由键和对应值成对组成。字典也被称作关联数组或哈希表。
      2> 字典是序列类型,但是是无序序列所以没有索引和分片

    • 字典的迭代

    			#只取k的值
    			d = dict({"a":1,"b":2,"c":3})
    			for k in d.keys():
    			    print(k)
    			#只取v的值
    			for v in d.values():
    			    print(v)
    			#取k,v值
    			for k,v in d.items():
    			    print(k,"---",v)
    
    • 字典中的方法

      通用函数:len(),max(),min(),dict()

      str(字 典):返回字典字符串格式

      clear:清空字典

      items():返回字典键值对组成的结构

      keys():返回字典中键组成的一个结构

      values():返回字典中值组成的一个结构

      get():根据指定键获取值(如果该键没有不会报错),可以设置默认值

      formkeys(序列,值):使用序列作为键,使一个值成为字典的所有值

    	示例:
    	l = ["a","b","c"]
    	d.dict.fromkeys(l,100) 
    
    展开全文
  • 1、首先创建一个字典:其格式{“xx”:“xx”,“xx”:“xx”}里面你想加多少就加多少,这个字典中包括了你朋友的信息。官方术语:字典是放在花括号{ }中的一系列-值对 friend={"name":"Liudan","height":168,"age":...

    1、首先创建一个字典:其格式{“xx”:“xx”,“xx”:“xx”}里面你想加多少就加多少,这个字典中包括了你朋友的信息。官方术语:字典是放在花括号{ }中的一系列键-值对

    friend={"name":"Liudan","height":168,"age":25}
    #这是将一个字典赋值给friend变量.字典的键是"name","height","age",这些相应的值是"Liu",168,25。
    

    有一天,你忘记了你最好朋友的名字,可以通过字典中的“键”,来找出其名字

    friend['name']
    

    结果

    'Liudan'
    

    也可将他打印出来

    print("我最好的朋友是"+friend['name'])
    

    结果

    我最好的朋友是Liudan
    

    2、时隔多年,你终于知道了你这位朋友的微信号。如何把微信号和已知信息添加到一起呢? 官方术语:添加键-值对

    friend["wechart"]=12345
    print(friend)
    

    结果

    {'name': 'Liudan', 'height': 168, 'age': 25, 'wechart': 12345}
    

    在微信上,一直想知道他头像1201代表什么意思,在穷追不舍的追问下,得知这是他的生日。将这条信息也备注到字典中

    friend[1201]="birthday"
    print(friend)
    

    结果

    {'name': 'Liudan', 'height': 168, 'age': 25, 'wechart': 12345, 1201: 'birthday'}
    

    3、在某天聊天中,发生了一件社死的事情。你发现这么多年,你一直记错了最好朋友的名字。那就修改一下字典中的值吧!

    friend["name"]="Jidan"
    print(friend)
    

    结果

    {'name': 'Jidan', 'height': 168, 'age': 25, 'wechart': 12345, 1201: 'birthday'}
    

    4、经过这次社死现场,他的名字已经深深烙印在你的心里,你觉的已经不需要用字典来存储这一信息。那需要做的是删除它——键-值对。

    del friend["name"]
    print(friend)
    

    结果

    {'height': 168, 'age': 25, 'wechart': 12345, 1201: 'birthday'}
    

    5-(1)、在一个炎热的下午,你想看看这个字典中存了什么不可告人的秘密。遍历所有的键-值对,items()方法。
    A、items()s方法

    print("万能的上帝,请帮我打印出所有的键值对吧!")
    for i,j in friend.items():
        print("\n键:"+str(i))  #当有数字时,将其转换为字符串类型,否则万能的上帝也帮不了你。以下同理
        print("值:"+str(j))
    

    结果

    万能的上帝,请帮我打印出所有的键值对吧!
    
    键:height
    值:168:age
    值:25:wechart
    值:12345:1201:birthday
    

    5-(2)、你只需要字典中的键or值时,可用分别用keys()方法/values()方法来实现这一目的。遍历字典中的所有键/值。
    A、keys()方法:

    print("我有尚方宝剑在此!尔等谁敢放肆")
    for i in friend.keys():
        print("键:"+str(i))
    

    结果

    我有尚方宝剑在此!尔等谁敢放肆!
    键:height
    键:age
    键:wechart
    键:1201
    

    B、values()方法

    for j in friend.values():
        print("values:"+str(j))
    

    结果

    values:168
    values:25
    values:12345
    values:birthday
    
    展开全文
  • 其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。例如,字典值{‘rope’:1,‘torch’:6,‘gold coin’:42,‘dagger’:1,‘arrow’:12}意味着玩家有1条绳索,6坏人火把,42枚金币等。 写一...

    欢迎关注小睿的微信公众号:郭小睿同学,每天更新小知识、笔记、案例、学习资源~
    在这里插入图片描述

    好玩游戏的物品清单

    你在创建一个好玩的视频游戏。用于对玩家物品清单建模的数据结构是一个字典。其中键是字符串,描述清单中的物品,值是一个整型值,说明玩家有多少该物品。例如,字典值{‘rope’:1,‘torch’:6,‘gold coin’:42,‘dagger’:1,‘arrow’:12}意味着玩家有1条绳索,6坏人火把,42枚金币等。
    写一个名为displayInventory()函数,它接受任何可能的物品清单,并显示如下:

    Inventory:
    1  绳索
    6  火把
    42  金币
    Total number of items:49
    

    Tips:你可以使用for循环,遍历字典中所有的键。

    代码展示:

    stuff = {'绳索': 1, '火把': 6, '金币': 42}
    
    
    def displayInventory(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))
    
    
    displayInventory(stuff)  # 展示数据
    

    运行这段程序,结果如下:

    stuff = {'绳索': 1, '火把': 6, '金币': 42}
    
    def displayInventory(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))
        
    displayInventory(stuff)  # 展示数据
    

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

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

    dragonLoot=[‘gold coin’,‘dagger’,‘gold coin’,‘gold coin’,‘ruby’]

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

    addToInventory()函数应该返回一个字典,表示更新过的物品清单。请注意,列表可以包含多个同样的项。你的代码看起来可能像这样:

    def addToInventory(inventory, addedItems):
         # your code goes here
    inv = {'gold coin': 42, 'rope':1}
    dragonLoot = ['gold coin', 'dagger','gold coin','gold coin','ruby']
    inv = addToInventory(inv, dragonLoot)
    displayInventory(inv)
    

    前面的程序(加上前一个项目中的、displayInventory()函数)将输出如下:

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

    代码展示

    def displayInventory(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))
    
    
    def addToInventory(ivt, dgl):
        for i in dgl:  # 遍历列表中的值
            print(i)
            ivt.setdefault(i, 0)  # 设置默认值为0
            ivt[i] += 1  # 遇到相同的键就加1
        return ivt
    
    
    inv = {'gold coin': 42, 'rope': 1}
    dragonLoot = ['gold coin', 'dagger', 'gold coin', 'gold coin', 'ruby']
    # 更新数据
    inv = addToInventory(inv, dragonLoot)
    # 展示数据
    displayInventory(inv)
    
    
    展开全文
  • 1、创建一个字典,其中是字符串,描述一物品,值是一整型值,说明有多少该物品。例如,字典值{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着有 1 条绳索、 6 火把、 42 枚金币...

    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)

    运行结果:

     

    转载于:https://www.cnblogs.com/heyangblog/p/10995483.html

    展开全文
  • 其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。例如,字典值{‘rope':1,'torch':6,'gold coin':42,'dagger':1,'arrow':12}意味着玩家有1条绳索,6坏人火把,42枚金币等。 写一名为...
  • dict和set的背后 为什么它们是无序的? 为什么并不是所有的Python对象都可以...由实验得知,不管查询有多少个元素的字典或集合,所耗费的时间都能忽略不计(前提是字典或者集合不超过内存大小). 字典中的散列表 散列
  • python实践项目

    2018-04-25 11:00:47
    其中是字符串,描述清单中的物品,值是一整数型,说明玩家有多少该物品。例如,字典值为{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着玩家有1条绳索,6火把,42枚金币等。写一...
  • Counter是一个容器,可统计相同的值有多少个,可视为:将值作为,数量作为值的字典 #!/usr/bin/env python3 # -*- coding: utf-8 -*- import collections x=[1,2,3,11,22,33,1,2,3,4,22] y=['a','b','c','d','a','...
  • 其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。例如,字典值{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着玩家有 1 条绳索、 6 火把、 42 枚金币等。.....
  • 其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。 例如,字典值 {‘rope’: 1, ‘torch’: 6, ‘gold coin’: 42, ‘dragger’: 1, ‘arrow’: 12}意味着玩家有1条绳索、6火把、42...
  • python代码修改

    2021-06-02 22:11:37
    要求按工龄增序输出每工龄段有多少员工。 输入格式: 输入首先给出正整数N(≤10​5​​),即员工总人数;随后给出N整数,即每员工的工龄,范围在[0, 50]。 输出格式:...
  • 其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。例如,字典值{‘rope’: 1, ‘torch’: 6, ‘gold coin’: 42, ‘dagger’: 1, ‘arrow’: 12}意味着玩家有 1 条绳索、6 火把、42 枚...
  • 一个正整数可以由多少个连续的整数之和来表示 CSDN LINK CheckiO LINK Speech Module 阿拉伯数字转成英文表达式 CSDN LINK CheckiO LINK Find Sequence 【未解锁】 CSDN LINK CheckiO LINK Time Converter (12...
  • Python编程快速上手-第五章实践

    千次阅读 2018-01-08 22:44:32
    初学python,尝试着写一写,仅供参考...其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。例如,字典值{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着玩家有1 条
  • Python——集合(set)

    2019-11-27 08:48:20
    集合(set): 集合是一些唯一的、不可变的对象组成的一无序集合体(collection),这些对象支持与数学集合论相对应...一集合的行为类似于一个有键无值的字典,但由于集合是无序的,而且不会把映射到值,因此...
  • python实践项目(四)

    千次阅读 2017-10-31 16:56:46
    其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物品。例如,字典值{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着玩家有 1 条绳索、 6 火把、 42 枚金币等。...
  • 其中是字符串,描述清单中的物品,值是一整型值,说明玩家有多少该物 品。例如,字典值{'rope': 1, 'torch': 6, 'gold coin': 42, 'dagger': 1, 'arrow': 12}意味着玩 家有 1 条绳索、6 火把、42 枚金币等。 ...
  • 案例一:在某随机序例中,找到出现频度最高的3元素,它们出现的次数是多少? 1 from random import randint ... 4 # 以data中的元素作为字典,以0作为值创建一个字典 5 my_dict = ...
  • 随笔记录方便自己和同路人查阅。 #------------------------------------------------我是可耻的分割线------------------------------------------- ...描述物品清单中的物品,值是一整型值,说明玩家有多少该物...
  • 使用Redis记录用户在线状态

    千次阅读 2019-09-18 06:12:03
    并且,无论有多少个键值对,查询时间始终不变。Python字典就是基于哈希表实现的。在Redis中也有一个数据结构叫作哈希表。在Redis中,使用哈希表可以保存大量数据,且无论有多少数据,查询时间始终保持不变。Redis...
  • 现在给定一个字典,用户输入一个单词,如何根据字典找出这个单词有多少个兄弟单词? 3.4.8 找出数组中出现次数超过一半的数,现在有一个数组,已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数。...

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

python字典有多少个键

python 订阅