《Python项目——温度单位的转换》

一,问题

温度有摄氏度(Celsius)和华氏度(Fabrenheit)两个不同的单位。摄氏度0度为结冰点,沸点为100度;华氏度以32度为冰点,以212度为沸点。一般来说,中国采用摄氏度,美国采用华氏度。两者之间的转换公式为:
摄氏度=(华氏度-32)/1.8
华氏度=摄氏度*1.8+32

二,代码

(一)输入

#定义一个函数获取带符号的温度值。
def tempstr():
	while True:
		temp=input('请输入带有符号[C代表摄氏度,F代表华氏度]的温度数值:')
		if temp[-1] in ['c','C','f','F']:
			return temp
		else: #如果输入的温度值没有带有符号,会提示输入错误并被要求重新输入。
			print('输入错误,请输入带有符号的温度数值')
			print('-'*20)

(二)处理输出

#定义一个函数对温度值进行单位转换并输出。
def progress(temp):
	if temp[-1] in ['F','f']: #如果温度值单位为华氏度,则会被转换为摄氏度并被输出。
		output=(eval(temp[:-1])-32)/1.8
		print('温度转换为摄氏度为{:.2f}C'.format(output))
	else: ##如果温度值单位为摄氏度,则会被转换为摄氏度并被输出。
		output=eval(temp[:-1])*1.8+32 
		print('温度转换为华氏度为{:.2f}F'.format(output))

(三)总体代码

def tempstr():
	while True:
		temp=input('请输入带有符号[C代表摄氏度,F代表华氏度]的温度数值:')
		if temp[-1] in ['c','C','f','F']:
			return temp
		else: 
			print('输入错误,请输入带有符号的温度数值')
			print('-'*20)
def progress(temp):
	if temp[-1] in ['F','f']:
		output=(eval(temp[:-1])-32)/1.8
		print('温度转换为摄氏度为{:.2f}C'.format(output))
	else:
		output=eval(temp[:-1])*1.8+32
		print('温度转换为华氏度为{:.2f}F'.format(output))
temp=tempstr()
progress(temp)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值