python 简单题目练手【详解版】【1】

1.分析题目,思考问题与解答:

【1】.输入?以空格分隔?

我最先想到的是以下版本:

复制代码
s = list(input().split(' '))

这个会出现答案错误

原因:用了 split() 处理后就已经是列表形式了,再用 list 就是多此一举。默认split()会忽略多个空格,split(' ')可能产生多个空格

【2】.怎么统计各行就业学生数量?

这个我不知道

参考豆包后:

创建一个空字典,因为输出形式像字典。count_dict = {}遍历 for industry in s ,然后统计数量:

解释:

【3】.数量怎么按从高到低输出

详解:

sorted :已排序的,item : 项目

lambda:无明函数

【5】怎么输出?

循环次数 item 的值 item 0 (行业名) item 1 (数量) 打印结果
1 ('计算机', 3) 计算机 3 计算机:3
2 ('交通', 2) 交通 2 交通:2
3 ('金融', 1) 金融 1 金融:1

OK齐活!来看整体效果:

python 复制代码
s = input().split()
count_dict = {}
for industry in s:
    if industry in count_dict:
        count_dict[industry] += 1
    else:
        count_dict[industry] = 1

sorted_items = sorted(count_dict.items(),key = lambda x:x[1],reverse = True)

for item in sorted_items:
    print(f"{item[0]}:{item[1]}")
相关推荐
学逆向的15 分钟前
C++纯虚函数
开发语言·c++·网络安全
岁月宁静26 分钟前
RAG 文档摄入全链路,从原理到生产落地
vue.js·人工智能·python
程序员二叉39 分钟前
【JUC】ThreadLocal底层原理|内存泄漏|弱引用|跨线程传递方案
java·开发语言·面试·职场和发展·juc
程序员二叉40 分钟前
【JUC】线程池全套深度详解|参数|流程|拒绝策略|调优|异常处理
java·开发语言·jvm·算法·面试·juc
JaydenAI43 分钟前
[对比学习LangChain和MAF-07]如何引入人机交互的审批流程
python·ai·langchain·c#·agent·hitl·maf
神奇元创1 小时前
商用级光路加速卡:大模型推理的极速落地方案
python·神经网络·fpga开发·dsp开发
凡人叶枫1 小时前
Effective C++ 条款22:将成员变量声明为 private
linux·开发语言·c++
Qt程序员1 小时前
掌握 Linux 内核调度:从原理到实现(进程篇)
java·开发语言
运筹vivo@2 小时前
Python ContextVar 底层机制与内存模型拆解
前端·数据库·python