تقنية

parse_float في بايثون: هل يحول أعداد TOML الصحيحة؟

نوع الصحيح لم يتغير
الصحيح. [1] [2]

اختيار نوع العشري لا يغير نوع الصحيح. [1] [2]

الخلاصة السريعة

لا؛ يخص parse_float قيم TOML العائمة، لا جميع الأعداد. [1] [2]

  • نحلل نصًا فيه x=7 وy=7.5. [1] [2]
  • نمرر Decimal إلى parse_float. [1] [2]
  • يبقى نوع x هو int. [1] [2]
  • يصير نوع y هو Decimal. [1] [2]
  • اختبرنا 3.12.14 دون قراءة ملف. [1] [2]

المثال

import tomllib
from decimal import Decimal
v=tomllib.loads('x=7\ny=7.5',
    parse_float=Decimal)
print(type(v['x']).__name__)
print(type(v['y']).__name__)

[1] [2]

فرع التحويل

المصدر هنا يفصل فرع العدد الصحيح عن فرع العائم؛ يستدعي الدالة المختارة في الثاني. المخرجان int ثم Decimal. العدد الصحيح لا يصل إلى هذه الدالة لمجرد وجوده في النص نفسه. [1] [2]

نوع العائم صار Decimal
العائم. [1] [2]

النطاق

هذا اختيار للتحليل، لا تحويل لاحق لكل القيم. القيم المقتبسة تبقى نصوصًا. مع الدالة الافتراضية يكون العائم float. لا يجوز للدالة إرجاع dict أو list. لا نختبر حسابًا ماليًا أو دقة عمليات لاحقة. [1] [2]

المراجع

  1. Python 3.12: tomllib.parse_float
  2. CPython 3.12.14: number conversion
  3. موضوع تك: لغة بايثون — مفردات
  4. موضوع تك: تطبيقات بايثون — مفردات

للتوسع: بحث عن لغات البرمجة

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.