ai.analysis.money package

Submodules

ai.analysis.money.currency module

class ai.analysis.money.currency.Currency(*values)[source]

Bases: Enum

Supported currencies with their symbols and USD conversion rate.

USD

US Dollar, symbol “$”, conversion rate to USD is 1.0.

Type:

Currency

EUR

Euro, symbol “€”, conversion rate to USD is 1.15.

Type:

Currency

USD = '$'
EUR = '€'
__init__(symbol: str)[source]

Initialize the currency with its symbol and set its USD conversion rate.

Parameters:

symbol (str) – The symbol representing the currency.

Raises:

ValueError – If the currency is unsupported.

ai.analysis.money.money module

class ai.analysis.money.money.Money(amount: float | int, currency_type: ~ai.analysis.money.currency.Currency = $)[source]

Bases: object

Represents a monetary amount in a specific currency.

amount

The numeric amount of money.

Type:

float

currency_type

The currency of the amount.

Type:

Currency

__init__(amount: float | int, currency_type: ~ai.analysis.money.currency.Currency = $)[source]

Initialize a Money instance.

Parameters:
  • amount (float | int) – The monetary amount.

  • currency_type (Currency, optional) – The currency of the amount. Defaults to USD.

Raises:

ValueError – If amount is not a float or int.

convert_to(target_currency: Currency) Self[source]

Convert this amount to a different currency.

Parameters:

target_currency (Currency) – The currency to convert to.

Returns:

A new Money instance in the target currency.

Return type:

Money

in_formatted(decimals: int = 2) str[source]

Format the amount with a currency symbol.

Parameters:

decimals (int, optional) – Number of decimal places. Defaults to 2.

Returns:

The formatted amount, e.g. “10.00 €”.

Return type:

str

ai.analysis.money.money_test module

ai.analysis.money.money_test.eur_money()[source]
ai.analysis.money.money_test.test_initialization()[source]
ai.analysis.money.money_test.test_convert_to()[source]
ai.analysis.money.money_test.test_in_formatted()[source]
ai.analysis.money.money_test.test_int_addition()[source]
ai.analysis.money.money_test.test_money_addition()[source]
ai.analysis.money.money_test.test_addition_with_different_currencies_failed()[source]
ai.analysis.money.money_test.test_int_subtraction()[source]
ai.analysis.money.money_test.test_money_subtraction()[source]
ai.analysis.money.money_test.test_subtraction_with_different_currencies_failed()[source]
ai.analysis.money.money_test.test_int_multiplication()[source]
ai.analysis.money.money_test.test_money_multiplication()[source]
ai.analysis.money.money_test.test_multiplication_with_different_currencies_failed()[source]
ai.analysis.money.money_test.test_int_division()[source]
ai.analysis.money.money_test.test_money_division()[source]
ai.analysis.money.money_test.test_division_with_different_currencies_failed()[source]
ai.analysis.money.money_test.test_equality()[source]
ai.analysis.money.money_test.test_currency_conversion()[source]

Module contents