Advertisement

Python汇率兑换(EVAL && FORMAT)

阅读量:

一、任务描述

人民币与美元被视为全球两种主要流通货币之一。基于温度转换程序的设计理念,在汇率为1美元等于7人民币的基础上开发一个双向兑换系统。

将用户输入的美元转换为人民币,或将输入的人民币转换为美元。

要求如下:

输入输出的人民币均以大写形式开头为RMB,并且金额可能为整数值或带有小数点的小数值;例如:RMB123代表人民币123元。

输入输出中的美元必须以大写字母开头的 USD 标识符表示,并且金额支持整型和浮点型数值。例如,在输入中使用\text{USD} 20.0则代表...;在输出中使用\text{USD} 15则代表...

(3) 设置输出的小数值位数为两位的具体方法如下:print("%.2f" % a)。当输入数据格式不符合要求时, 程序将返回提示信息: 输入数据格式不符合要求.

(4) 使用 input() 获得输入时,不要增加提示字符串。

实现思路

通过条件判断语句检查输入字符串的前三个字符是否为'RMB'或'USD';若字符串起始为'RMB'则将其数值部分除以7换算成美元;否则如果起始字符非'RMB'或'USD'则返回错误提示信息;若起始字符是'USD'则将其数值部分乘以7转换成人民币

二、代码展示

复制代码
 money = input("请输入金额,以USD或RMB开头:\n")

    
 if money [0:3] == "RMB":
    
     usd = eval(money[3:])/ 7.00
    
     print("USD{:.2f}".format(usd))
    
 elif money [0:3] == "USD":
    
     rmb = eval(money [3:]) 
    
     print ("RMB{:.2f}".format (rmb))
    
 else:
    
     print("输入格式错误")

EVAL:

(eval)是一个内置函数,用于将字符串作为 Python 表达式执行并返回结果。例如:
expression = "3 + 5"
result = eval(expression) # 结果为 8

在代码中,eval 被用来将用户输入的金额部分(去掉货币符号后的字符串)转换为数值类型(如整数或浮点数)。例如:
money = "RMB100"
amount = eval(money[3:]) # 将 "100" 转换为数值 100

FORMAT

1.详解

format 是一个强大的字符串格式化方法,允许您在字符串中嵌入变量,并控制其显示格。它提供了多种方式来格式化输出,使代码更具可读性和灵活性。

在代码中,format 用于将计算后的金额格式化为带有两位小数的字符串,并添加相应的货币符号。例如:

print("USD{:.2f}".format(usd)) # 输出例如 "USD14.29"

2.其他格式化选项

format 方法支持多种格式说明符,可以根据需要进行调整。例如:

- 千位分隔符:

number = 1234567.89
print("{:,}".format(number)) # 输出: 1,234,567.89

- 百分比格式:

percentage = 0.1234
print("{:.2%}".format(percentage)) # 输出: 12.34%

- 对齐和填充:

print("{:>10}".format("Hello")) # 右对齐,总宽度为10

输出: Hello

全部评论 (0)

还没有任何评论哟~