【Python实践笔记】0000H 温度转换程序带来的学习Python之热情

在这里插入图片描述
图片来源于turtle库的练习


共勉:纸上得来终觉浅,绝知此事要躬行。




1. Python 温度转换程序实例分析


要求:
温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
转换算法如下:(C表示摄氏度、F表示华氏度)‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
C = ( F - 32 ) / 1.8‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
F = C * 1.8 + 32‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

要求如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
(1) 输入输出的摄氏度可采用大小写字母C结尾,温度可以是整数或小数,如:12.34C指摄氏度12.34度;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
(2) 输入输出的华氏度可采用大小写字母F结尾,温度可以是整数或小数,如:87.65F指华氏度87.65度;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
(3) 输出保留小数点后两位,输入格式错误时,输出提示:输入格式错误;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
(4) 使用input()获得测试用例输入时,不要增加提示字符串。


代码:

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("输入格式错误")

第二次写的代码:

t = input()
if t[-1] in ['F', 'f']:
    print("{:.2f}C".format((eval(t[0:-1]) - 32)/1.8))
elif t[-1] in ['C', 'c']:
    print("{:.2f}F".format(eval(t[0:-1])*1.8 + 32))
else:
    print("输入格式错误")

测例:
输入:12.34C
输出:54.21F

输入:87.65f
输出:30.92C

输入:32F
输出:0.00C

输入:5c
输出:41.00F

输入:123456789.0123456789F
输出:68587087.23C

输入:1024.2048X
输出:输入格式错误


分析:

  • eval()函数将字符转换成数字;
  • TempStr[0:-1]是取字符串的最后一个字符

2. Python 货币转换程序实例


要求:
人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
人民币和美元间汇率固定为:1美元 = 6.78人民币。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用RMB表示,美元USD表示,符号和数值之间没有空格。

注意:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
(1) 获得输入请使用input() ;‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
(2) 不提示输出格式错误,结果小数点后保留两位。


代码:

m = input()
if m[:3] == "RMB":
    C = eval(m[3:])/6.78
    print("USD{:.2f}".format(C))
elif m[0:3] == "USD":
    F = eval(m[3:])*6.78
    print("RMB{:.2f}".format(F))

3. 基础语法


3.1 程序构架基础

3.1.1 缩进


缩进:一行代码开始前的空白区域,表达程序的格式框架
在这里插入图片描述


3.1.2 注释


在这里插入图片描述


3.1.3 变量


变量:程序中用于保存和表示数据的占位符号
在这里插入图片描述


3.1.4 保留字


- 被编程语言内部定义并保留使用的标识符
- Python语言有35个保留字(也叫关键字)
- 保留字是编程语言的基本单词,大小写敏感
在这里插入图片描述


3.2 数据类型


3.2.1 字符串


在这里插入图片描述


3.2.1.1 索引

索引:返回字符串中单个字符 <字符串>[M]

TempStr[-1] 获取字符换最后一个字符
TempStr[0] 获取字符换第一个字符


3.2.1.2 切片

切片:返回字符串中一段字符子串 <字符串>[M: N]

TempStr[0:-1] 截取字符串0到-2的字符(此处有点绕,请参看字符串的序号图)
m[:3] 截取字符串0到2的字符
TempStr[1:] 从字符串1位置开始截取

注意:要理解切片的意思


3.2.2 数字类型


整数和浮点数都是数字类型


3.2.2 列表类型


列表类型:由0个或多个数据组成的有序序列

- 列表使用[ ]表示,采用逗号(,)分隔各元素
- 使用保留字 in 判断一个元素是否在列表中

TempStr[-1] in [‘C’,‘c’]判断前者是否与列表中某个元素相同


3.3 语句与函数


3.3.1 赋值语句


由赋值符号构成的一行代码


3.3.2 分支语句


由判断条件决定程序运行方向的语句
- 使用保留字if elif else构成条件判断的分支结构
- 每个保留字所在行最后存在一个冒号(😃,语法的一部分

冒号及后续缩进用来表示后续语句与条件的所属关系


3.3.3 函数


系统函数eval():去掉参数最外侧引号并执行余下语句的函数
eval(TempStr[0:-1]) # TempStr[0:-1]是参数
在这里插入图片描述
eval()函数的使用实例:
描述
获得用户输入的一个字符串,格式如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
M OP N‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
其中,M和N是任何数字,OP代表一种操作,表示为如下四种:+, -, *, /(加减乘除)‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
根据OP,输出M OP N的运算结果,统一保存小数点后2位。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
注意:M和OP、OP和N之间可以存在多个空格,不考虑输入错误情况。
输入输出示例
在这里插入图片描述
代码实现

s = input()
print("{:.2f}".format(eval(s)))

错误代码

t = input
for i in t:
    if t[i] in ["+", "-", "*", "/"]:
        print("{:.2f}".format(eval(t[:i-1])eval(t[i])eval(t[i+1:])))break

写一个函数print_bytes_hex(data), 其中data是参数

def print_bytes_hex(data):
    lin = ['%02X' % i for i in data]
    print(" ".join(lin))

3.4 Python 输入输出


input():从控制台获得用户输入的函数
- 用户输入的信息以字符串类型保存在<变量>中

TempStr = input(“请输入”) # TempStr保存用户输入的信息

print():以字符形式向控制台输出结果的函数
- 字符串类型的一对引号仅在程序内部使用,输出无引号

print(“输入格式错误”) # 向控制台输出 输入格式错误

在这里插入图片描述
在这里插入图片描述


4. 参考资料

【1】慕课网,北京理工大学,嵩天教授,《Python语言程序设计》声明:笔记中截图、部分代码来自该课程课件,非博主原创
【2】Python123:在线编程网站

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智驾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值