Python学习分享——计算邮资问题(不使用第三方库)
描述
根据邮件的重量和用户是否选择加急计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。
输入
输入一行,包含整数和一个字符,以一个空格分开,分别表示重量(单位为克)和是否加急。如果字符是y,说明选择加急;如果字符是n,说明不加急。
输出
输出一行,包含一个整数,表示邮费。
样例输入:1200 y
样例输出:17
分析
由于用户可能选择加急,也可能不加急,因此,我们可以对用户是否加急的情况进行一个条件判断,然后再进行具体的资费计算。在资费计算的部分,需要注意的是,对于不足500克的部分需要按照500克来计算,这里我们也可以引入一个条件判断,不足500的部分和是500倍数的部分也进行一个条件判断。
这里通过python中的一个小特性,大于0的数可以当作TRUE来判断;对500取模,如果数值不为0(不可整除),那么意味着超出却不满500的部分要单独以500计数,且由于取模结果不为0,相当于TRUE触发条件;而如果可以整除,那么取模数值为0,则相当于FALSE不会出发条件。再通过整除//运算,不足500的部分会被舍弃,我们可以手动加1的方式来进行弥补。
代码
order = input().split() #注意仅一行输入,我们这里通过.split方法将输入的字符串拆分成列表
num,str = int(order[0]),order[1] #再通过切片的方法对两个变量进行赋值# 条件判断,用户是否加急或者输入有误
if str == 'n':if 0 < num <= 1000: #计算1000以内的资费print(8)else: #计算大于1000的资费情况
# 这里通过python中的一个小特性,大于0的数可以当作TRUE来判断;对500取模,如果数值不为0(不可整除),那么意味着超出却不满500的部分要单独以500计数,且由于取模结果不为0,相当于TRUE触发条件;而如果可以整除,那么取模数值为0,则相当于FALSE不会出发条件。再通过整除//运算,不足500的部分会被舍弃,我们可以手动加1的方式来进行弥补。if (num - 1000)%500:print(((num - 1000) // 500 + 1) *4 + 8)else:print((num - 1000) // 500 * 4 + 8)
elif str == 'y':if 0 < num <= 1000:print(8 + 5)else:if (num - 1000)%500:print(((num - 1000) // 500 + 1) *4 + 8 + 5)else:print((num - 1000) // 500 * 4 + 8 + 5)
else:print('请输入正确的数据!')
Python学习分享——计算邮资问题(不使用第三方库)相关推荐
- python中if语句缺省else_9_【Python学习分享文章】_if(条件语句)
[Python学习分享文章]_if(条件语句)_logicalJudgement介绍及基本操作 综述 计算机的"条件语句"和生活中的"条件成立"是不一样的. 一 ...
- 小猪的Python学习之旅 —— 10.三分钟上手Requests库
小猪的Python学习之旅 -- 10.三分钟上手Requests库 标签:Python 一句话概括本文: 本节讲解Requests库的常见使用,以及一个实战项目: 扒取某一篇微信文章里所有的图片,视 ...
- 不属于python第三方库_在 Python 语言中,不属于机器学习领域第三方库的是______。???????????????????????????????????????...
在 Python 语言中,不属于机器学习领域第三方库的是______.??????????????????????????????????????? 答:Arcade 图的遍历方法有两种:深度优先搜索 ...
- Python学习九计算生态
从数据处理到人工智能 Python库之数据分析: numpy:表达N维数组的最基本库 pandas:Python数据分析高层次应用库 scipy:数学.科学和工程计算功能库 Python库之数据可视化 ...
- Python学习教程(Python学习路线):如何正确使用Pandas库提升项目的运行速度?...
Python学习教程:如何正确使用Pandas库提升项目的运行速度? 如果你从事大数据工作,用Python的Pandas库时会发现很多惊喜.Pandas在数据科学和分析领域扮演越来越重要的角色,尤其是 ...
- python 时间序列分析之ARIMA(不使用第三方库)
这里简单介绍下ARMA模型: 在生产和科学研究中,对某一个或者一组变量 x(t)x(t) 进行观察测量,将在一系列时刻t1,t2,⋯,tnt1,t2,⋯,tn t_1,t_2,⋯,t_n 所得到的离散 ...
- c调用python第三方库_用 Python ctypes 来调用 C/C++ 编写的第三方库
看到一篇简洁的文章--如何用Python ctypes调用C++(ctypes调用C没这么多麻烦事),不敢独享... 如果需要用 Python 调用 C/C++ 编写的第三方库(这些第三方库很可能就是 ...
- python实用性函数分享_17.【Python学习分享文章】function(函数)1
综述 - 作用 将会重复使用的代码片段,进行打包处理,封装成一个模块,之后使用的时候就调用函数的名字就可以全部使用函数里面所有的代码. 目的:精简代码可读性(函数的名字可以符合生活逻辑).修改性(修改 ...
- python中file是什么意思中文_15_【Python学习分享文章】_file(文件)及其操作
综述 - file(文件)的含义 Python 中的 file 不止使用 PC 时所说的单个文件,比如 .txt..exe 等这类文件,也包括"打开一个网址".程序间的通信数据等, ...
最新文章
- 从OpenAI看深度学习研究前沿
- windows 2008 server R2 按服务器角色的版本对比
- python好学吗1001python好学吗-怎样才能写出 Pythonic 的代码 #P1001#
- Leecode 268. 丢失的数字——Leecode每日一题系列
- PWN-COMPETITION-HGAME2022-Week1
- Salesforce宣布5.82亿美元收购文件编辑公司Quip
- linux用户名和密码6,Linux系统中(CentOS 7)的用户和权限管理
- 将一个数的字节顺序逆置
- 没有做数据备份 网站随时毁于一旦
- kubernetes endpoints是什么
- drools规则引擎通过数据库存储规则
- 测试人员必掌握的测试文档
- QQ音乐API分析之-加密参数分析(sign计算)
- hustoj安装学习(2019)
- failed to push some refs to 'git@github.com怎么办
- csp2021-09-4 收集卡牌
- 乐理分析笔记(二) 莫扎特 土耳其进行曲
- 连锁店管理系统如何助力零售业
- 分时租赁大败退之下 威马汽车缘何涉足共享出行?
- 二维绘图引擎ZRender