• 0

كيف أنسق العملات في بايثون؟

أملك أعداد حقيقية (أعداد بفاصلة) وأريد تحويلها إلى أعداد وعملات أي عندما يكون المبلغ كبير فسيتم إضافة فواصل لتسهيل قراءته، فمثلا 188518982.18 تصبح £188,518,982.18، فكيف أستطيع فعل ذلك في لغة بايثون؟

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك عدّة طرق لتنسيق شكل العملات في لغة بايثون، منها استخدام وحدة locale فهي المسؤولة عن تنسيق العملات (والوقت) حيث نستعمل دالة setlocale لتحديد موقعنا الجغرافي ومن ثم سنستخدم دالة currency لتنسيق العملة كما في المثال التالي:

>>> import locale
>>> locale.setlocale( locale.LC_ALL, '' )
'English_United States.1252'
>>> locale.currency( 188518982.18 )
'$188518982.18'
>>> locale.currency( 188518982.18, grouping=True )
'$188,518,982.18'

وإذا كنت تستخدم الإصدار 2.7 من بايثون فيمكنك التنسيق بسهولة عن طريق السطر التالي:

>>> '{:20,.2f}'.format(18446744073709551616.0)
'18,446,744,073,709,551,616.00'

وهنالك طريقة أخرى للحل باستخدام حزمة babel مع دالة numbers.format_currency كما في المثال التالي:

>>> import babel.numbers
>>> import decimal
>>> babel.numbers.format_currency( decimal.Decimal( "188518982.18" ), "GBP" )
£188,518,982.18

المصدر

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن