[Python3 练习] 001 温度转换1

题目:温度转换 I

(1) 描述

  • 温度的刻画有两个不同体系:摄氏度 (Celsius) 和华氏度 (Fabrenheit)
  • 请编写程序将用户输入的华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度
  • 转换公式如下,C 表示摄氏度,F 表示华氏度????????????????????????????????????????????????????????????????????????????????????????????????

C = ( F - 32 ) / 1.8????????????????????????????????????????????????????????????????????????????????????????????????

F = C * 1.8 + 32???????????????????????????????????????????????????????????????????????????????????????????????

(2) 要求????????????????????????????????????????????????????????????????????????????????????????????

  • 输入输出的摄氏度可用 C 的大小写字母结尾,温度可以是整数或小数,如:12.34C 指 12.34 摄氏度
  • 输入输出的华氏度可用 F 的大小写字母结尾,温度可以是整数或小数,如:87.65F 指 87.65 华氏度
  • 输出保留小数点后两位,输入格式错误时,输出提示:输出格式错误???????????????????????????????????????????????????????????????????????????????????????????????

(3) 程序

# 我的解法

num = input("请输入想转换的温度值(以 C/F 结尾):")

if num.endswith(‘F‘) or num.endswith(‘f‘):
    F = float(num[:-1])
    C = (F - 32) / 1.8
    print("%4.2fC" % C)
elif num.endswith(‘C‘) or num.endswith(‘c‘):
    C = float(num[:-1])
    F = C * 1.8 + 32
    print("%4.2fF" % F)
else:
    print("输入格式错误")
# 参考答案

#TempConvert.py
TempStr = input("请输入带有符号的温度值: ")
if TempStr[-1] in [‘F‘, ‘f‘]:
    C = (eval(TempStr[0:-1]) - 32)/1.8
    print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in [‘C‘, ‘c‘]:
    F = 1.8*eval(TempStr[0:-1]) + 32
    print("转换后的温度是{:.2f}F".format(F))
else:
    print("输入格式错误")

(4) 小结

  • 对比参考答案,我觉得至少有三点值得学习
  1. 用 in 判断字符串末尾的方法
  2. 用 eval() 转换字符串的方法
  3. 用 format() 格式化(我的 print 好象还在 C 里没拐出来)


题源:www.python123.io

原文地址:https://www.cnblogs.com/yorkyu/p/10349420.html

时间: 02-03

[Python3 练习] 001 温度转换1的相关文章

python3编码问题

继续收集python3编码问题相关资料 资料来源  鹏程的新浪博客(转载)http://blog.sina.com.cn/s/blog_6d7cf9e50102vo90.html  这篇鹏程老师写的关于python3的编码的博客写的特别的清楚,直接就摘入下来.供自己作为参考. 1.从字节说起: 一个字节包括八个比特位,每个比特位表示0或1,一个字节即可表示从00000000到11111111共2^8=256个数字.一个ASCII编码使用一个字节(除去字节的最高位作为作奇偶校验位),ASCII编码

〖Python〗-- 编码转换

[字符编码与转码] 为什么要进行编码和转码 由于每个国家电脑的字符编码格式不统一(列中国:GBK),同一款软件放到不同国家的电脑上会出现乱码的情况,出现这种情况如何解决呢?! 当然由于所有国家的电脑都支持Unicode万国码,那么我们可以把Unicode为跳板,先把字符编码转换为Unicode,在把Unicode转换为另一个国家的字符编码(例韩国),则不会出现乱码的情况.当然这里只是转编码集并不是翻译成韩文不要弄混了. Python3.0进行编码转换 # __author__:"ShengXin

Python——交互式图形编程

1.图形显示 图素法 像素法 图素法---矢量图:以图形对象为基本元素组成的图形,如矩形. 圆形 像素法---标量图:以像素点为基本单位形成图形 2.图形用户界面:Graphical User Interface,GUI Tkinter---Python 标准GUI Graphics---基于Tkinter扩展图形库 Turtle---python内置的图形库. 3.安装graphics库 安装在D:\Python3\Lib\site-packages,网址http://mcsp.wartbur

站长工具 > 日常实用工具

百度相关 百度收录查询 指定时间内百度搜索,对指定网站的网页数量及具体情况 百度关键词挖掘 查询关键词PC指数.移动指数.收录量及排名 百度关键词地区排名 有些关键词在各地的排名是不一样的,就是通常说的关键字地区排名 百度关键词即时查询 百度相关搜索.百度推荐.其他人在搜的相关关键词! 百度关键词优化分析 帮助站长估算优化该关键词的难易程度及优化成本 SEO相关 SEO综合 了解该域名的相关信息,如域名年龄相关备案等等,及时调整网站优化. SEO优化建议 快速定位你页面哪些地方存在不利seo的因

独家全功能USB2.0开发板,最强CY7C68013A-128核心板,超强资料不断提供更新服务

       学习USB开发再也不用买书啦,也不用花费重金去上培训班啦,IFLabs开创USB学习开发新模式,你所需要的知识.技术.范例.代码等等统统都在这里.IFLabs打造全网最丰富.最权威的USB开发平台和资料. 热卖的IFLabs精品USB2.0核心板套件再升级,全网独家推出最强.最全功能的Cypress USB 2.0 CY7C68013A-128AXC核心板开发板,全网最全配件和全网最全开发资料.只需这一次投入,即可实现USB接口开发的从入门到精通!并且有长期的全网最全开发手册更新支

51单片机课程设计:基于DS18B20的温度报警器

51单片机课程设计:基于DS18B20的温度报警器 本程序用于读取DS18B20温度,同时具备报警功能,工程分为3个文件,main.c.temp.c.temp.h,经本人修改部分代码,适用于吉林农业大学51开发板,其他朋友亦可移植到其他型号开发板.工程文件在文章最下方. 1.main.c文件 /*********************************说明****************************************** 本程序用于读取温度检测模块DS18B20数值,并

第二次作业及总结--数据类型和运算符

#include<stdio.h>#include<math.h>int main(void){int money,year;double rate,sum;printf("Enter money:");scanf("%d",&money);printf("Enter year:");scanf("&d",&year);printf("Enter rate:"

云课堂javaweb微专业Java基础测试题

第1章编程题 1温度转换 题目内容: 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: °F = (9/5)*°C + 32 其中C表示摄氏温度,F表示华氏温度. 程序的输入是一个整数,表示华氏温度.输出对应的摄氏温度,也是一个整数. 提示,为了把计算结果的浮点数转换成整数,需要使用下面的表达式: (int)x; 其中x是要转换的那个浮点数. 输入格式: 一个整数. 输出格式: 一个整数. 输入样例: 100 输出样例: 37 时间限制:500ms内存限制:32000kb 1 import

杭电ACM分类

杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze 广度搜索1006 Redraiment猜想 数论:容斥定理1007 童年生活二三事 递推题1008 University 简单hash1009 目标柏林 简单模拟题1010 Rails 模拟题(堆栈)1011 Box of Bricks 简单题1012 IMMEDIATE DECODABILITY

STM32W108无线传感器网络多传感器环境参数监测实例

本实例基于STM32W108的SimpleMac协议栈,利用无线节点完成对温度.湿度.超声波.烟雾.声音.光敏等传感器的控制及数据采集,并实时将数据发送到STM32W108开发板,完成传感器数据的汇集,并通过串口传送给PC机. 13.4传感器数据采集程序设计与实现 下面将根据不同的传感器分别进行传感器数据采集程序的设计说明,最后给出数据包的发送.接收及主函数部分的详细内容. 13.4.1 温度传感器 temperature.h文件内容: #ifndef  __TEMPERATURE_H__ #d