Python 如何将货币符号转换为代码?

Python 如何将货币符号转换为代码?,python,currency,Python,Currency,我想把英镑和美元的价格换算成欧元。是否有Python包可以将符号转换为代码?哪个可以替换以下函数调用将符号转换为代码(货币符号) 从技术上讲,您只需要一个从符号到代码的映射,因此“convert_sym_to_code”将是非常简单的-除了相当多的货币使用相同的符号(例如,“$”符号在全球至少有25种货币使用),因此您不能将符号用作唯一键(当然,除非您确定有错误的结果).一个简单的方法是只使用字典: CURRENCY_MAPPING = [ '$': 'USD', '£': 'G

我想把英镑和美元的价格换算成欧元。是否有Python包可以将符号转换为代码?哪个可以替换以下函数调用
将符号转换为代码(货币符号)


从技术上讲,您只需要一个从符号到代码的映射,因此“convert_sym_to_code”将是非常简单的-除了相当多的货币使用相同的符号(例如,“$”符号在全球至少有25种货币使用),因此您不能将符号用作唯一键(当然,除非您确定有错误的结果).

一个简单的方法是只使用字典:

CURRENCY_MAPPING = [
    '$': 'USD',
    '£': 'GBP',
]

def convert_sym_to_code(currency_symbol):
    try:
        CURRENCY_MAPPING[currency_symbol.strip()]
    except KeyError:
        raise ValueError('Unknown symbol "%s" % currency_symbol)

如果遇到任何未知符号,此操作将失败,但它很容易扩展。更重要的是,如果使用
$
来指定澳元,您的计算将是错误的。

将其转换为什么“代码”?货币代码,如欧元、美元、英镑。。。。
CURRENCY_MAPPING = [
    '$': 'USD',
    '£': 'GBP',
]

def convert_sym_to_code(currency_symbol):
    try:
        CURRENCY_MAPPING[currency_symbol.strip()]
    except KeyError:
        raise ValueError('Unknown symbol "%s" % currency_symbol)