• 0

كيف أنسق سلسلة نصية باستخدام قاموس في بايثون3؟

أريد أن أنسق سلسلة نصية باستخدام قاموس في بايثون 3، فما هي أسهل طريقة لفعل ذلك؟ أريد شيء مشابه لهذا (المثال الأول):

# Fails, KeyError 'latitude'
geopoint = {'latitude':41.123,'longitude':71.091}
print '{latitude} {longitude}'.format(geopoint)

# Succeeds
print '{latitude} {longitude}'.format(latitude=41.123,longitude=71.091)

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


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

هنالك عدة طرق في لغة بايثون لتمرير محتويات القاموس إلى سلسلة نصية، فيمكنك على سبيل المثال فك تحزيم القاموس عبر استخدام رمز النجمتين "**” مباشرة قبل اسم القاموس كما يظهر في المثال التالي:

geopoint = {'latitude':41.123,'longitude':71.091}
print('{latitude} {longitude}'.format(**geopoint))

أو يمكنك أيضا استخدام نمط التنسيق الجديد والذي يدعم الإشارة إلى سمات كائن وعناصر الدواران وذلك عن طريق دالة format كما في المثال التالي:

'{0[latitude]} {0[longitude]}'.format(geopoint)
'The title is {0.title}s'.format(a) # the a from your first example

كما يمكنك استخدام دالة format_map في الإصدار الثالث من بايثون وستعمل بدون مشاكل.

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


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

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

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

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


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

تسجيل الدخول

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


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