文章目录

  • 课程简介
  • 第一章 Python基本语法
  • 1.3 实例1:温度转换
    • 问题分析
      • 两种温度体系
      • 需求分析
      • 确定问题的计算部分
      • 划分问题的边界
    • 实例编写
    • 举一反三
      • Python语法元素理解
      • 改变输入、输出
      • 扩展计算问题
    • 补充
  • 版权说明

课程简介

计算机是运算工具,更是创新平台,高效有趣地利用计算机需要更简洁实用的编程语言。Python简洁却强大、简单却专业,它是当今世界最受欢迎的编程语言,学好它终身受用。请跟随我们,学习并掌握Python语言,一起动起来,站在风口、享受创新!
—— 课程团队


MOOC课程:
Python语言程序设计(嵩天 、黄天羽 、礼欣)
北京理工大学

课程视频地址:

课程视频-B站

授课目标:

本课程适合如下教学目标:

  • 程序设计入门课:面向各层次各专业大学在校生、部分优秀高中生,作为程序设计入门课程
  • 体系化编程基础:面向拟构建坚实编程能力的自学者,作为不断奋斗的参考在线课程
  • Python科目备考:面向全国计算机等级考试二级Python科目的备考考生,作为在线备考资源
  • 再试一次的尝试:面向拟放弃计算机或编程学习的学习者,作为再试一次的课程资源,学不会这门课学再放弃不迟…

第一章 Python基本语法


1.3 实例1:温度转换


问题分析


两种温度体系

  • 摄氏度 ( ℃ ℃ ℃)
    以1标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画。
    中国等大多数国家使用。

  • 华氏度 ( ℉ ℉ ℉)
    以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画。
    美国、英国等大多数国家使用。


需求分析

问题的需求分析:

  1. 两种温度体系之间相互转换。

  2. 摄氏度转换为华氏度,华氏度转换为摄氏度。


确定问题的计算部分

  • 理解1:直接将温度值进行转换。
  • 理解2:将温度信息发布的声音或图像形式进行理解和转换。
  • 理解3:监控温度信息发布渠道,实时获取并转换温度值。

→ 采用理解1:直接将温度值进行转换。

  1. 温度数值需要标明温度体系,即摄氏度或华氏度。
  2. 转换后也需要给出温度体系。

划分问题的边界

输入:带华氏或摄氏标志的温度值。
处理:根据温度标志选择适当的温度转换算法。
输出:带氏或华氏标志的温度值。

→ 输入、输出格式设计
标识放在温度最后,F表示华氏度,C表示摄氏度。即:82F表示华氏82度,28C表示摄氏28度。

→ 算法设计
根据华氏和摄氏温度定义,利用转换公式如下:
C = ( F − 32 ) ÷ 1.8 C=(F-32)÷1.8 C=(F−32)÷1.8
F = C × 1.8 + 32 F=C×1.8+32 F=C×1.8+32
这里的 C C C 表示摄氏温度, F F F 表示华氏温度。


实例编写

实例1:
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
题目来源:python123

要求:

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

代码:

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

举一反三


Python语法元素理解

温度转换程序共10行代码,但包含很多语法元素。通过参考实例代码的框架结构,逐行分析、逐词理解,初步感受Python语法。


改变输入、输出

  • 改变温度数值与温度标识之间的关系设计。
  • 标识改变放在温度数值之前:C82F28
  • 标识字符改变为多个字符:82Ce28Fa

例:
温度转换2(相同的问题背景,要求不同)

题目来源:python123
要求:

  • ① 输入、输出的摄氏度采用大写字母"C"开头,温度可以是整数或小数,如:C12.34指摄氏度12.34度;
  • ② 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:F87.65指华氏度87.65度;
  • ③ 不考虑异常输入的问题,输出保留小数点后两位;

代码:

#TempConvert v2.py
TempStr = input()
if TempStr[0] in ['F']:C = (eval(TempStr[1:]) - 32)/1.8print("C{:.2f}".format(C))
elif TempStr[0] in ['C']:F = 1.8 * eval(TempStr[1:]) + 32print("F{:.2f}".format(F))
else:print()

扩展计算问题

温度转换是各类转换问题的代表性问题,如:货币转换、长度转换、重量转换、面积转换等。
问题不同,但程序代码相似。


补充

其它温度体系计算公式:


不同温度尺度参考示例图:


版权说明

1.3 实例1:温度转换 | Python语言程序设计(嵩天)相关推荐

  1. python语言程序设计嵩天-Python语言程序设计基础(第2版)嵩天课后答案

    嵩天.礼欣.黄天羽Python语言程序设计基础(第2版)习题答案本书提出了以理解和运用计算生态为目标的Python语言教学思想,在系统讲解Python语言语法的同时介绍了从数据理解到图像处理的14个P ...

  2. python慕课笔记 Python语言程序设计 嵩天笔记整理

    ** 1.python基本语法元素 1.2** C诞生于1972年,python诞生于1990年 静态语言:编译执行:C/C++\Java,执行速度快 脚本语言:解释执行:Python.JavaScr ...

  3. 【python】Python语言程序设计/嵩天老师入门课程笔记整理

    分章节目录 1.python开发环境配置 1.1 程序语言分类(执行方式): 1.2 python程序语法元素分析: 1.3 python保留字 2.python绘图 2.1 编程语言概述 2.2 t ...

  4. python语言程序设计嵩天-python语言程序设计基础(嵩天版),第二章程序练习题...

    python语言程序设计基础(嵩天版),第二章程序练习题 欢迎访问江南烧酒的博客 2.2汇率兑换程序.按照1美元=6人民币汇率编写一个美元和人民币的双向兑换程序. """ ...

  5. python语言程序设计 嵩天老师(第七周)

    1.Python对文件操作采用的统一步骤是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬ ...

  6. MOOC python语言程序设计 嵩天老师 笔记(第六周)

    1.S和T是两个集合,哪个选项对S^T的描述是正确的?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪ ...

  7. 《Python语言程序设计》——3.4 实例研究:最小数量的硬币

    本节书摘来自华章计算机<Python语言程序设计>一书中的第3章,第3.4节,作者:[美]梁勇(Y. Daniel Liang) 更多章节内容可以访问云栖社区"华章计算机&quo ...

  8. Python语言程序设计笔记(全)

    Python语言程序设计 源代码人类可理解 目标代码 计算机直接执行 文章目录 Python语言程序设计 1.编译与解释 2.编程语言分类 3.python语言简介 4. 下载配置python 5.编 ...

  9. Python语言程序设计笔记

    例:获得用户输入数字N,计算并输出从N开始的5个质数,单行输出 首先:定义函数判断一个数是否是质数,return True/False,注意return True的格式,不在for循环体中,在函数体中 ...

最新文章

  1. 计算机视觉工程师一天都大致在做些什么?
  2. 《预训练周刊》第22期:Fastformer:加法注意力就是你所需要的、用于蛋白建模的大规模预训练语言模型...
  3. Android运行时识别API版本
  4. php读取csv指定行_PHP快速读取CSV大文件指定行
  5. [转] Oracle学习之创建数据库(新建实例)
  6. Java并发(9)- 从同步容器到并发容器
  7. 怎样使用OUTLOOK收发邮件   小雨
  8. long 雪花算法_为什么 MySQL 不推荐使用 uuid 或者雪花 id 作为主键?
  9. ASP.NET2.0下使用AJAX调用Webservice的方法
  10. cat3 utp是不是网线_科普向:关于网线必须了解的基本知识!
  11. 迅雷离线下载 docker
  12. destoon网站mysql分表_destoon 数据库操作
  13. 如何免费注册一个域名?
  14. 运用windows shell修复Wannacry漏洞
  15. 【SQL自学打卡|DAY17】——多表查询
  16. 解决复制大段英文文献到翻译软件出现的换行问题
  17. 网站关键词排名,如何快速提升?
  18. 手撸Spring系列2:IOC/DI 思想(源码篇-IOC)
  19. 以分割栅格为例实现FME模板的方案优化
  20. 使用VS编译mqtt库(一次成功)

热门文章

  1. 选择工业建模好还是游戏建模更有前途?资深建模师为你解答
  2. python 获取二进制图片数据及判断得到图片类型
  3. 【直流电机】基于matlab Simulink双闭环直流调速系统动态仿真模型【含Matlab源码 2363期】
  4. 分布式服务框架设计笔记一
  5. UP对战平台DOTA全图 炸图 踢人
  6. 计算机组成原理课程学什么,计算机组成原理课程的学习概要和学习方法
  7. 如何用VOSviewer分析CNKI关键词共现?
  8. win7系统老是弹窗怎么解决_如何解决win7系统中打开文件夹老是弹出新窗口的问题...
  9. 电脑去水印软件哪个效果好
  10. java finalize 何时被调用_Java禁止使用finalize方法