当前位置: 首页 > news >正文

(三)Python语法基础(实战)

1.身体质量指数BMI

身体质量指数BMI,与人的体重和身高相关,是目前国际常用的衡量人体胖瘦程度以及是否健康的一个指标。已知BMI的计算公式如下:

BMI= 体重(kg)÷身高(m)÷身高(m)

请编写代码实现根据用户输入的身高体重计算BMI的功能。

# 身体质量指数
height=float(input("请输入身高/m"))
weight=float(input("请输入体重/kg"))
print('BMI:{:.2f}'.format(weight/height/height))#保留两位小数

解析:

①第一行代码这里你可能注意到float和input嵌套调用的情况,这是非常常见的,甚至有三个以上的函数嵌套调用。这时候我们只需要关注小括号(括号都是成对出现的,第一个左括号对应最后一个右括号,第二个对应倒数第二个)。

②从最内层的一对小括号以及小括号前的函数名开始看,这里首先是一个input函数,用来输入。输入完之后使用了float函数进行了数据类型的转换。转换完之后赋值给了height

在使用input函数的时候要注意,输入的内容默认是字符串类型的,如果想要用这些输入的数据进行计算,你需要将这些字符串先强制转换为数字类型(进一步考虑到,身高、体重可能是小数,所以可以使用float函数将输入的数据强制转换为浮点数)

③最后通过print函数进行打印,这里使用format进行格式化输出,直接用weight/height/height的计算结果替换掉前面字符串'BMI:{:.2f}'中的{:.2f},格式为保留两位小数。

2.温度转换

从键盘读入一个华氏温度,按下述公式将其转换为摄氏温度并输出。转换公式为:c = 5(f-32)/9,其中f表示华氏温度,c表示摄氏温度。

对于浮点数类型的变量c,保留两位小数输出请使用下述语句:print(f"{c:.2f}")

输入格式:

一个浮点数(华氏温度),如132.0

输出格式:

摄氏温度(保留两位小数),如55.56

f=float(input())
c = 5(f-32)/9
print(f"{c:.2f}")

3.计算矩形的周长和面积

编写一个程序,要求用户输入矩形的长度 l 和宽度 w,然后计算并输出矩形的周长和面积。公式:

Perimeter=2×(l+w)

Area=l×w

输入格式:

输入两行,第一行一个正整数,表示矩形的长度 l,第二行一个正整数,表示矩形的宽度 w。

输出格式:

输出两行,第一行一个整数,表示矩形的周长,第二行一个整数,表示矩形的面积。

l=int(input("请输入矩形的长l:"))
w=int(input("请输入矩形的宽w:"))
print(2*(l+w))
print(l*w)

注意:

  • 题目说长和宽都是整数,所以直接使用int函数将输入的数据强制转换为整数即可。
  • 另外题目要求输出是两行,所以需要两个print,因为print函数默认执行一次换行一次(其实是额外打印了一个换行符'\n'才有了换行的效果的)。

4.输出三位数百、十、个位上的数字

用户输入一个三位自然数,计算并输出其百位、十位和个位上的数字。

输入格式:

输入1个自然数。如123

输出格式:

输出各位数字,用空格隔开。如1 2 3

N = int(input('请输入一个三位自然数')
B = N//100
S = N//10%10
G = N%10
print(f"{B} {S} {G}")

5.format应用练习

输入一个浮点数,要求整数部分是五位,小数部分是三位。编写程序,使用format()函数输出该浮点数,要求宽度为 25、使用加号“+”填充、右对齐方式、输出千位分隔符、保留小数点后2位。

输入格式:
输入一个浮点数,例如:12345.789

输出格式:
例如:++++++++++++++++12,345.79

# 获取用户输入的浮点数
num = float(input())# 使用format()函数格式化输出
print('{:+>25,.2f}'.format(num))

format()函数的格式化说明符:

+   以+号填充

>   右对齐,填充左侧(<是左对齐,^是居中对齐向两侧填充)

25       总宽度为25个字符(字符串的本质上是一个一个的字符构成的,一个字符是一位中文或一个字母或一个特殊符号或一个转义字符,如'9'、'a'、'!'、'\n',注意'29'是两个字符的字符串)

,    使用千位分隔符

.2f   保留2位小数

http://www.dtcms.com/a/358340.html

相关文章:

  • LabVIEW测斜设备承压试验台
  • pip 镜像源配置(清华/阿里/豆瓣)详解
  • 智瞰风评 - 基于大语言模型的个人征信报告风险分析师
  • vscode新建终端默认不是cmd问题
  • 无人机也能称重?电力巡检称重传感器安装与使用指南
  • macOS 15.6 ARM golang debug 问题
  • 如何评价 Kimi 开源的推理平台 Mooncake?对行业有什么影响?
  • 从零实现一个可扩展的规则解析引擎 —— 支持 AND/OR 优先级、短路求值与多类型运算符
  • Vue2之axios在脚手架中的使用以及前后端交互
  • RabbitMQ 和 Kafka
  • 函数(2)
  • 并发编程——08 Semaphore源码分析
  • 免费在线图片合成视频工具 ,完全免费
  • 文件夹命名软件,批量操作超简单
  • 美团8-30:编程题
  • 深入解析前缀和算法:原理、实现与应用
  • 医疗AI时代的生物医学Go编程:高性能计算与精准医疗的案例分析(六)
  • react组件
  • C++优先级队列priority_queue的模拟实现
  • Trailing Zeros (计算 1 ~ n 中质因子 p 的数量)
  • Java全栈开发面试实战:从基础到高并发的全面解析
  • Redis数据类型概览:除了五大基础类型还有哪些?
  • leetcode643. 子数组最大平均数 I
  • AI-调查研究-65-机器人 机械臂控制技术的前世今生:从PLC到MPC
  • vscode+cmake+mingw64+opencv环境配置
  • wpf之依赖属性
  • 具有类人先验知识的 Affordance-觉察机器人灵巧抓取
  • C++_多态和虚构
  • 卡片一放,服务直达!实现信息零层级触达
  • Python实现京东商品数据自动化采集的实用指南