MaxReve نشر 28 نوفمبر 2015 أرسل تقرير نشر 28 نوفمبر 2015 أملك أعداد حقيقية (أعداد بفاصلة) وأريد تحويلها إلى أعداد وعملات أي عندما يكون المبلغ كبير فسيتم إضافة فواصل لتسهيل قراءته، فمثلا 188518982.18 تصبح £188,518,982.18، فكيف أستطيع فعل ذلك في لغة بايثون؟ 1 اقتباس
0 هشام رزق الله نشر 28 نوفمبر 2015 أرسل تقرير نشر 28 نوفمبر 2015 هنالك عدّة طرق لتنسيق شكل العملات في لغة بايثون، منها استخدام وحدة 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 المصدر اقتباس
السؤال
MaxReve
أملك أعداد حقيقية (أعداد بفاصلة) وأريد تحويلها إلى أعداد وعملات أي عندما يكون المبلغ كبير فسيتم إضافة فواصل لتسهيل قراءته، فمثلا 188518982.18 تصبح £188,518,982.18، فكيف أستطيع فعل ذلك في لغة بايثون؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.