Skip to content

温度转换器

入门约 10 分钟

你将构建什么

一个温度转换器:用户输入温度值和源单位,选择目标单位,程序输出转换结果。支持摄氏度(C)、华氏度(F)、开尔文(K)之间的互转。

学习目标

  • 用函数封装每种转换公式
  • 理解温度单位之间的换算关系
  • 用 input 读取用户输入并格式化输出
  • 练习条件判断选择对应公式

前置要求

  • 了解 Python 函数定义
  • 了解基本的数学运算
  • 已完成“猜数字游戏”项目或具备同等基础

步骤

  1. 1

    定义转换函数

    以摄氏度为基准,定义函数把任意单位转为摄氏度,再从摄氏度转为目标单位。公式:F = C * 9/5 + 32,K = C + 273.15。

    代码
    def to_celsius(value, unit):
        if unit == 'C':
            return value
        elif unit == 'F':
            return (value - 32) * 5 / 9
        elif unit == 'K':
            return value - 273.15
    
    def from_celsius(celsius, unit):
        if unit == 'C':
            return celsius
        elif unit == 'F':
            return celsius * 9 / 5 + 32
        elif unit == 'K':
            return celsius + 273.15

    预期结果

    调用 to_celsius(100, 'C') 返回 100,to_celsius(212, 'F') 返回 100。

  2. 2

    读取用户输入

    提示用户输入温度值、源单位、目标单位。用 float() 把输入转为浮点数。

    代码
    value = float(input("请输入温度值:"))
    from_unit = input("请输入源单位 (C/F/K):").upper()
    to_unit = input("请输入目标单位 (C/F/K):").upper()

    预期结果

    程序读取三个输入:数值和两个单位字母。

  3. 3

    计算并输出结果

    调用转换函数,先转成摄氏度再转为目标单位。用 f-string 格式化输出,保留两位小数。

    代码
    celsius = to_celsius(value, from_unit)
    result = from_celsius(celsius, to_unit)
    print(f"{value}°{from_unit} = {result:.2f}°{to_unit}")

    预期结果

    输入 100、C、F 输出“100.0°C = 212.00°F”。

  4. 4

    添加单位校验

    检查输入的单位是否是 C/F/K 之一,不是则提示错误退出。避免无效单位导致函数返回 None。

    代码
    valid_units = {'C', 'F', 'K'}
    if from_unit not in valid_units or to_unit not in valid_units:
        print("错误:单位必须是 C、F 或 K")
        exit()
    
    # 然后执行转换逻辑

    预期结果

    输入无效单位时提示错误并退出,有效单位正常转换。

自己动手试试

你学到了什么

你学会了用函数封装转换公式、用基准单位做中转——这是处理多对多转换的通用技巧。Python 的函数定义简洁明了,非常适合这类计算密集型任务。

相关资源

相关课程

相关练习

相关工具

相关参考文档

相关错误

相关术语

相关术语

新手友好的术语表用大白话解释编程术语——变量、函数、DOM、Promise 等等。

相关错误

用大白话解释常见错误——什么意思、为什么发生、如何修复。

← 返回主题