目的
通过对热量单位的转换综合运用数据类型的转化,字符串的格式化输出,选择结构语句,菜单制作。
内容
有0、1、2三个输入功能选项,分别选择的含义是将千焦转换成千卡、将千卡转换成千焦、退出程序。
# 千焦千卡转换
def qianjiao_to_qianka(qianjiao): # 千焦转换成千卡
qianka = qianjiao * 0.2389
# qianjiao *= 1.0
print(f"{round(qianjiao, 1)}KJ转化后为{round(qianka, 2)}KCal")
def qianka_to_qianjiao(qianka): # 千卡转换成千焦
qianjiao = qianka * 4.1858518
# qianka *= 1.0
print(f"{round(qianka, 1)}KCal转化后为{round(qianjiao, 2)}KJ")
def main():
while True:
print("*******************")
print("**1、千焦转千卡**")
print("**2、千卡转千焦**")
print("**0、退出程序**")
print("*******************")
number = input("请输入您的选择:")
if number not in ["0", "1", "2"]:
print("您的输入有误!")
if number == "0":
break
if number == "1":
try:
qianjiao = float(input("请输入千焦:"))
except:
print("您的输入有误!")
continue
qianjiao_to_qianka(qianjiao)
elif number == "2":
try:
qianka = float(input("请输入千卡:"))
except:
print("您的输入有误!")
continue
qianka_to_qianjiao(qianka)
if __name__ == "__main__":
main()
程序运行结果:
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择:1
请输入千焦:248
248.0KJ转化后为59.25KCal
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择:2
请输入千卡:125
125.0KCal转化后为523.23KJ
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择:3
您的输入有误!
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择:awef
您的输入有误!
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择:1
请输入千焦:adwqd
您的输入有误!
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择:2
请输入千卡:23ad
您的输入有误!
*******************
**1、千焦转千卡**
**2、千卡转千焦**
**0、退出程序**
*******************
请输入您的选择: