【Python刷题篇】Python从0到入门4|字典复习、函数入门、综合实践
Python从0到入门3目录
- 前言
- Q1:字典复习-首都
- Q2:函数入门-求差
- Q3:函数入门-牛牛的朋友
- Q4:综合案例:自动售卖饮料机
- Q5:综合案例-被8整除的数字
- Q6:综合案例-披萨店的订单
- 总结
前言
- 本期是Python从0到入门4|字典复习、函数入门、综合实践,有不懂的地方可以评论进行讨论!
- 接下来我将继续更新Python刷题系列、数据库从0到入门刷题系列等等。
- 本系列文章采用牛客的核心代码模式进行案例代码提供,帮助大家从0到入门的学习过程中进行配套的刷题~
- 推荐给大家一款刷题、面试的神器,我也是用这一款神器进行学习的!~链接如下:刷题神器跳转链接
- 该神器不仅网页界面十分美观,而且操作起来极易上手入门!非常适合新手进行系统性的学习!
- 小白新手可以通过该神器进行日常的刷题、看大厂面经、学习计算机基础知识、与大牛面对面沟通~ 刷题的图片已经放在下面了~
Q1:字典复习-首都
问题描述:
创建一个依次包含键-值对’Beijing’: {Capital: ‘China’}、‘Moscow’: {Capital: ‘Russia’}和’Paris’: {Capital: ‘France’}的字典cities_dict,请使用for循环遍历"已使用sorted()函数按升序进行临时排序的包含字典cities_dict的所有键的列表",对于每一个遍历到的城市名,使用print()语句一行输出类似字符串’Beijing is the capital of China!'的语句。
输入描述:
输出描述:
按题目描述进行输出即可。
Beijing is the capital of China!
Moscow is the capital of Russia!
Paris is the capital of France!
参考代码:
cities_dict = {'Beijing': {'Capital': 'China'},'Moscow': {'Capital': 'Russia'},'Paris': {'Capital': 'France'}}
for i in sorted(cities_dict.keys()):print('%s is the capital of %s!'%(i,cities_dict[i]['Capital']))
Q2:函数入门-求差
问题描述:
请定义一个函数cal(),该函数返回两个参数相减的差。输入第一个数字记录在变量x中,输入第二个数字记录在变量y中,将其转换成数字后调用函数计算cal(x, y),再交换位置计算cal(y, x)。
输入描述:无
输出描述:根据题目描述输出两个差,每个数字单独一行。
参考代码:
方法一:
x = int(input())
y = int(input())def cal(x1, y1):return x1 - y1print(cal(x, y))
print(cal(y, x))方法二:
这里面先学会一个lambda定义一个函数,因为函数很简单,所以这样做不仅节省空间,而且比较快捷用法。
lambda 传入参数: 传回结果 f = lambda x, y: x - y 等价于
def f(x, y):return x - ycal = lambda x, y : x-y
x = int(input())
y = int(input())
print(cal(x, y))
print(cal(y, x))
Q3:函数入门-牛牛的朋友
问题描述:假如牛牛一个列表 friends_list 记录了他最好的几个朋友:[‘Niu Ke Le’, ‘Niumei’, ‘Niuneng’, ‘GOLO’],现在他想将列表里的名字替换成从0开始的数字,依次表示这几个朋友的重要性。请写一个replace函数,第一个参数是列表friends_list,第二个参数是要替换的数字index,即在函数中将列表元素修改成成列表下标值。请使用print函数直接打印修改前的列表。
使用for循环遍历列表 friends_list,每次调用replace函数替换列表中相应下标的元素。结束循环后,再次使用print函数直接打印修改后的列表,查看是否替换成功。
输入描述:无
输出描述:
[‘Niu Ke Le’, ‘Niumei’, ‘Niuneng’, ‘GOLO’]
[0, 1, 2, 3]
参考代码:
friends_list = ['Niu Ke Le', 'Niumei', 'Niuneng', 'GOLO']
print(friends_list)def replace(list, index):list[index] = indexfor a in range(len(friends_list)):replace(friends_list, a)print(friends_list)
Q4:综合案例:自动售卖饮料机
问题描述:
假如这是一台自动售卖饮料机的一段程序:
使用print()语句一行输出字符串 ‘What kind of drink would you like?’ ,
然后使用input()函数读取字符串,并将读取到的字符串存储到变量kind_of_drink中,
假设读取到饮料是可乐(cola),也即变量kind_of_drink的内容为’cola’,
请使用print()语句一行输出字符串 ‘Below is your cola. Please check it!’ 。
其他饮料已经售空了,因此如果是其他字符串,则输出一句类似 ‘The milk has been sold out!’ 的信息。
输入描述:cola
输出描述:
What kind of drink would you like?
Below is your cola. Please check it!
参考代码:
print("What kind of drink would you like?")
kind_of_drink = input()
if kind_of_drink in "cola":print("Below is your cola. Please check it!")
else:print("The", kind_of_drink, "has been sold out!")
Q5:综合案例-被8整除的数字
问题描述:
编写一个 while 循环判断输入的字符串对应的十进制数值是否是被8整除的数字,要求使用布尔变量 active 来控制循环结束的时机。每次循环开始先使用print()语句一行输出字符串 “Please enter a positive integer!\nEnter ‘quit’ to end the program.” ,
如果读取到字符串等于’quit’,则把布尔变量 active 的值更改为False,否则将字符串转成整数,如果能被8整除即是8的倍数,则使用print()语句一行输出类似字符串’80 is a multiple of 8.'的语句,否则使用print()语句一行输出类似字符串’4 is not a multiple of 8.'的语句,然后本次循环结束,再次进入 while 循环中的条件测试。
输入描述:保证每一行的输入只有数字或字符串’quit’,且保证数字合法,范围在[1, 100]。
输出描述:
参考代码:
active = True
while(active):print("Please enter a positive integer!\nEnter 'quit' to end the program.")try:resp = input()if resp == 'quit':active = Falseelse:resp = int(resp)if resp<1 or resp >100:print('数字合法')continueif resp%8 == 0:print(f'{resp} is a multiple of 8.')else:print(f'{resp} is not a multiple of 8.')except TypeError:continue
Q6:综合案例-披萨店的订单
问题描述:
创建一个依次包含字符串’chichen’、’ bacon’和’durian’的列表 pizza_orders,再创建一个名为 finished_pizza 的空列表,
使用 while 循环判断列表 pizza_orders 里面是否还有元素,如果有则使用pop()方法删掉将列表 pizza_orders 的最后一个元素,并把刚刚删掉的元素存到一个名为pizza的变量,假设pizza的值为’bacon’,请使用print()语句一行打印类似字符串’I made your bacon pizza!'的语句,并使用append()语句将pizza添加到列表 finished_pizza 的末尾,然后本次循环结束,再次进入 while 循环中的条件测试。在 while 循环结束后,再使用print()语句把列表 finished_pizza 整个打印出来。
输入描述:
输出描述:
按题目描述进行输出即可。
I made your durian pizza!
I made your bacon pizza!
I made your chichen pizza!
['durian', 'bacon', 'chichen']
参考代码:
pizza_orders = ['chichen', 'bacon', 'durian']
finished_pizza = []while len(pizza_orders) > 0:pizza = pizza_orders[-1]pizza_orders.pop(-1)print(f'I made your {pizza} pizza!')finished_pizza.append(pizza)print(finished_pizza)
总结
点击链接进行跳转注册,开始你的保姆级刷题之路吧!刷题打怪码神之路
另外这里不仅仅可以刷题,你想要的这里都会有,十分适合小白和初学者入门学习~
1、算法篇(398题):面试必刷100题、算法入门、面试高频榜单
2、数据结构篇(300题):都是非常经典的链表、树、堆、栈、队列、动态规划等
3、语言篇(500题):C/C++、java、python入门算法练习
4、SQL篇(82题):快速入门、SQL必知必会、SQL进阶挑战、面试真题
5、大厂笔试真题:字节跳动、美团、百度、腾讯…掌握经验不在惧怕面试!
【Python刷题篇】Python从0到入门4|字典复习、函数入门、综合实践相关推荐
- 【Python刷题篇】Python从0到入门3|循环、条件复习、元组入门、字典入门
Python从0到入门3目录 前言 Q1:团队分组 Q2:禁止重复注册 Q3:元组-牛客运动会 Q4:字典-遍历字典 Q5:字典-毕业生就业调查 Q6:姓名与学号 总结 前言 - 本期是Python从 ...
- python画图、python小游戏、python刷题、python算法、python编程与数学
python画图系列整理 python画图系列整理-CSDN博客 python游戏入门书籍推荐 python游戏入门书籍推荐_pygame书籍推荐_dllglvzhenfeng的博客-CSDN博客 p ...
- 【Python刷题篇】——Python入门 011面向对象(二)
- 【Python刷题篇】——Python数据分析 01 查看数据(一)
- python刷题软件代码_Python使用docx模块实现刷题功能代码
起由: 前一阵子想要刷一刷国二Python的题库,千方百计找到题库之后,打开一个个word文档,发现一题一题阅读很麻烦,而且答案就在题目的下面,阅读题目的时候想自己做出题目却又总能不经意看到答案,甚烦 ...
- 【嵌入式入门篇】嵌入式0基础沉浸式刷题篇1
嵌入式-入门沉浸式刷题篇 前言 Q1:嵌入式牛牛宏大小 Q2:嵌入式宏空间坐标数量 Q3:嵌入式牛牛疑惑的变量 Q4:嵌入式关键字const Q5:嵌入式机器的大小端 Q6:嵌入式不用排序找数字 Q7 ...
- 【Verilog刷题篇】硬件工程师从0到入门2|组合逻辑
Verilog从0到入门2-组合逻辑 前言 Q1:4位数值比较器电路 Q2:4bit超前进位加法器电路 Q3:优先编码器电路① Q4:用优先编码器①实现键盘编码电路 Q5:优先编码器Ⅰ Q6:使用8线 ...
- [python刷题模板] 珂朵莉树 ODT (基于支持随机访问的跳表
[python刷题模板] 珂朵莉树 ODT (基于支持随机访问的跳表) 一. 算法&数据结构 1. 描述 2. 复杂度分析 3. 常见应用 4. 常用优化 二. 模板代码 0. 区间推平(lg ...
- [python刷题模板] 珂朵莉树 ODT(20220928弃用,请看新文)
[python刷题模板] 珂朵莉树 ODT (基于SortedList 20220928弃用,请看新文) 一. 算法&数据结构 1. 描述 2. 复杂度分析 3. 常见应用 4. 常用优化 二 ...
最新文章
- 【Paper】2021_Consensus Control of Leader-Following Multi-Agent Systems in Directed Topology
- NB模块开机、关机、重启的实现
- 我的世界java版怎么装在u盘_我的世界选择器参数怎么使用?
- 使用SC命令使用(转)
- 在微信小程序中绘制图表(part3)
- Cocos2d-x Auto-batching 浅浅的”深入分析”
- C# winform使用InstallShield2019打包
- 管网平差c语言编程,哈工大给水管网平差软件
- google earth 专业版下载方法
- [Ubuntu] 二、安卓模拟器
- 智能合约审计之整形溢出攻击
- 前后端RSA加密梳理
- 【万人围观】20位著名作家,100句惊艳了时光的名句
- guided filter(导向滤波)导读
- PHP中date时差问题解决方法
- Ai-WB2系列的eclipes搭建环境教程
- MySQL5.5版本服务端安装图解
- python求二项式系数的几种方法及性能对比
- 为什么Google优化排名前期要做长尾关键词?谷歌seo怎么做?
- 服务器虚拟化负载,提高服务器工作负载性能:网络虚拟化