• Python每日一练(牛客新题库)——第20天:字典练习


    前言📢📢

    最近很多学了基础的小伙伴问我该怎么提升编程水平?学了基础该上哪刷题?明明学了很多,做项目却不知道怎么上手,其实这就是练得太少,只注重了学,却忽视了刷题,只有不断练习才能提高和巩固编程思维和能力!

    在这里插入图片描述

    刚好看到牛客网最近出了Python的新题库于是体验了一番感觉还不错

    在这里插入图片描述

    链接地址牛客网 | Python从入门到实践四十招,废话少说速度上号,或者跟着下文一起刷题!!!

    1. 查字典

    描述
    正在学习英语的牛妹笔记本上准备了这样一个字典:{‘a’: [‘apple’, ‘abandon’, ‘ant’], ‘b’: [‘banana’, ‘bee’, ‘become’], ‘c’: [‘cat’, ‘come’], ‘d’: ‘down’}。
    请你创建这样一个字典,对于牛妹输入的字母,查询有哪些单词?

    输入描述:输入一个字母,必定在上述字典中。

    输出描述:同一行中依次输出每个单词,单词之间以空格间隔。

    实现代码:

    dict1 = {'a': ['apple', 'abandon', 'ant'], 'b': ['banana', 'bee', 'become'], 'c': ['cat', 'come'], 'd': 'down'}
    a = input()
    for i in dict1[a]:
        print(i,end=' ')
    
    • 1
    • 2
    • 3
    • 4

    运行结果:

    a
    apple abandon ant 
    
    • 1
    • 2

    2. 字典新增

    描述:正在学习英语的牛妹创建了一个字典:{‘a’: [‘apple’, ‘abandon’, ‘ant’], ‘b’: [‘banana’, ‘bee’, ‘become’], ‘c’: [‘cat’, ‘come’], ‘d’: ‘down’}。现牛妹新学了一个字母letter,以及一个新单词word,请把它们增加到字典中,再输出更新后的字典。

    输入描述:无

    输出描述
    第一行输入一个新字母letter,
    第二行输入一个新单词word。

    实现代码:

    dict_2 = {
        "a": ["apple", "abandon", "ant"],
        "b": ["banana", "bee", "become"],
        "c": ["cat", "come"],
        "d": "down",
    }
    key1 = list(input().split())
    value1 = list(input().split())
    for i in range(0, len(key1)):
        dict_2[key1[i]] = value1[i]
    print(dict_2)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    运行结果:

    e
    egg
    {'a': ['apple', 'abandon', 'ant'], 'b': ['banana', 'bee', 'become'], 'c': ['cat', 'come'], 'd': 'down', 'e': 'egg'}
    
    • 1
    • 2
    • 3

    3. 使用字典计数

    描述
    Python的字典可以用来计数,让要被计数的元素作为key值,它出现的频次作为value值,只要在遇到key值后更新它对应的value即可。现输入一个单词,使用字典统计该单词中各个字母出现的频次。

    输入描述:输入一个字符串表示单词,只有大小写字母。

    输出描述:直接输出统计频次的字典。

    实现代码:

    a = input()
    a = list(a)
    a_dict = {}   
    for i in a:
       if i in a_dict: 
          a_dict[i]+=1
       else:
          a_dict[i]=1
    print(a_dict)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    运行结果:

    Nowcoder
    {'N': 1, 'o': 2, 'w': 1, 'c': 1, 'd': 1, 'e': 1, 'r': 1}
    
    • 1
    • 2

    4. 生成字典

    描述
    牛牛有两份列表,一份记录了牛客网用户的名字,另一份记录他们使用的语言。假设两份列表一一对应,请使用zip函数将两份列表封装为字典,以名字为key,语言为value,然后直接输出字典。

    输入描述
    第一行输入多个字符串表示用户名字,以空格间隔。
    第二行输入多个字符串表示使用的语言,以空格间隔。

    输出描述:直接输出两个列表组成的字典。

    代码实现:

    a =input()
    b = input()
    names = a.split()
    language = b.split()
    dict_a = dict(zip(names,language))
    print(dict_a)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    运行结果:

    Niuniu NIumei Niukele
    C C++ Python
    {'Niuniu': 'C', 'NIumei': 'C++', 'Niukele': 'Python'}
    
    • 1
    • 2
    • 3

    5. 如何让刷题更加高效呢?

    嫌博主更新慢的小伙伴牛客网上号自行刷题

    在这里插入图片描述

    链接地址牛客网 | Python从入门到实践四十招,废话少说速度上号!!!

  • 相关阅读:
    C++虚函数(定义,作用,原理,案例)
    第二章:整数二分与浮点数二分(极限思想)
    32 天高效突击:狂刷《Java 权威面试指南(阿里版)》,offer 拿到手软!
    ElasticSearch--解决集群健康状态是Red、Yellow的问题
    WMT 2022国际机器翻译大赛发榜,微信翻译斩获三项任务冠军
    基于springboot的计算机类考研交流平台(源码+论文)
    git记录
    数据结构与算法之动态规划算法(DP)
    HTML5 新元素
    90、一维装箱
  • 原文地址:https://blog.csdn.net/yuan2019035055/article/details/126166609