修改“货币兑换”程序,将货币兑换功能封装在CurExchange.py文件中,在01_test.py文件中使用CurExchange模块
时间: 2024-09-09 13:12:50 浏览: 30
要实现货币兑换功能的封装,我们可以创建一个名为 `CurExchange.py` 的Python文件,其中包含一个类,该类负责处理所有的货币兑换逻辑。然后在另一个文件 `01_test.py` 中导入 `CurExchange` 模块并使用它来进行货币兑换。
首先,我们来创建 `CurExchange.py` 文件:
```python
# CurExchange.py
class CurrencyExchanger:
def __init__(self, rates):
# rates: a dictionary that holds exchange rates from a base currency to other currencies
# e.g., rates = {'USD': 1, 'EUR': 0.86, 'JPY': 120}
self.rates = rates
def exchange(self, amount, from_currency, to_currency):
# amount: the amount of money to be exchanged
# from_currency: the currency code to exchange from
# to_currency: the currency code to exchange to
# Convert amount to the base currency first, then to the target currency
base_rate = self.rates[from_currency]
target_rate = self.rates[to_currency]
if base_rate == 0 or target_rate == 0:
raise ValueError("Invalid exchange rate.")
base_amount = amount / base_rate
exchanged_amount = base_amount * target_rate
return exchanged_amount
```
现在,我们创建 `01_test.py` 文件来使用 `CurExchange` 模块:
```python
# 01_test.py
from CurExchange import CurrencyExchanger
def main():
# Define exchange rates
rates = {'USD': 1, 'EUR': 0.86, 'JPY': 120}
# Create a CurrencyExchanger instance
exchanger = CurrencyExchanger(rates)
# Exchange 100 USD to EUR
result = exchanger.exchange(100, 'USD', 'EUR')
print(f"100 USD is equal to {result:.2f} EUR")
# Exchange 500 JPY to USD
result = exchanger.exchange(500, 'JPY', 'USD')
print(f"500 JPY is equal to {result:.2f} USD")
if __name__ == '__main__':
main()
```
在这个例子中,我们定义了一个汇率字典,创建了一个 `CurrencyExchanger` 类的实例,并使用它来执行两次货币兑换操作。通过运行 `01_test.py`,我们可以看到兑换的结果。