You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在现有Rate类基础上调用CBR汇率接口实现获取最高汇率货币名称功能

实现方案

你可以在原有Rate类中新增一个专门获取最高汇率货币名称的方法,逻辑如下:

  1. 调用已有的exchange_rates()方法获取全部货币的汇率数据
  2. 用max()函数对所有货币的Value字段做比较,筛选出汇率最高的货币对象
  3. 返回该对象的Name字段值

新增方法代码

def get_max_rate_currency(self):
    # 获取所有货币汇率字典
    all_valute = self.exchange_rates()
    # 按Value字段找最大值对应的货币信息
    max_rate_item = max(all_valute.values(), key=lambda item: item["Value"])
    return max_rate_item["Name"]

修改后完整可运行代码

import requests

class Rate:
    def __init__(self, format_='value'):
        self.format = format_

    def exchange_rates(self):
        self.r = requests.get('https://www.cbr-xml-daily.ru/daily_json.js')
        return self.r.json()['Valute']

    def make_format(self, currency):
        response = self.exchange_rates()
        if currency in response:
            if self.format == 'full':
                return response[currency]
            if self.format == 'value':
                return response[currency]['Value']
        return 'Error'

    def eur(self):
        return self.make_format('EUR')
    def usd(self):
        return self.make_format('USD')
    def brl(self):
        return self.make_format('BRL')
    
    # 新增的最高汇率货币名称获取方法
    def get_max_rate_currency(self):
        all_valute = self.exchange_rates()
        max_rate_item = max(all_valute.values(), key=lambda item: item["Value"])
        return max_rate_item["Name"]

# 调用示例
if __name__ == "__main__":
    r = Rate(format_='value')
    print(r.brl())  # 14.1581
    print(r.eur())  # 88.1397
    # 获取最高汇率货币名称
    print(r.get_max_rate_currency())

扩展说明

如果需要同时返回最高汇率的数值,可以修改方法的返回值:

def get_max_rate_currency(self):
    all_valute = self.exchange_rates()
    max_rate_item = max(all_valute.values(), key=lambda item: item["Value"])
    # 同时返回名称和汇率值
    return max_rate_item["Name"], max_rate_item["Value"]

内容的提问来源于stack exchange,提问作者This_guy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 21:54:00