إرجاع tuple من الحجج التي سيتم تغذيةها إلى string.format ()
-
22-08-2019 - |
سؤال
حاليا، أحاول الحصول على طريقة في Python لإرجاع قائمة من الصفر أو واحد أو سلسلتين لتوصيل تكوين سلسلة، ثم قم بتمريرها إلى طريقة السلسلة. يبدو رمزي شيء مثل هذا:
class PairEvaluator(HandEvaluator):
def returnArbitrary(self):
return ('ace', 'king')
pe = PairEvaluator()
cards = pe.returnArbitrary()
print('Two pair, {0}s and {1}s'.format(cards))
عندما أحاول تشغيل هذا الرمز، يوفر برنامج التحويل البرمجي IndexError: فهرس Tuple خارج النطاق.
كيف يجب علي الهيكل قيمة الإرجاع الخاصة بي لتمريرها كوسيطة .format()
?
المحلول
print('Two pair, {0}s and {1}s'.format(*cards))
أنت في عداد المفقودين فقط النجم: د
نصائح أخرى
يفضل التنسيق على المشغل٪، اعتبارا من مقدمة في بيثون 2.6: http://docs.python.org/2/library/stdtypes.html#str.format.
إنه أيضا أكثر بساطة بكثير فقط لفحص Tuple مع * - أو Dict مع ** - بدلا من تعديل سلسلة التنسيق.
هذه المحاولات لاستخدام "البطاقات" كإدخال تنسيق واحد للطباعة، وليس محتويات البطاقات.
جرب شيئا مثل:
print('Two pair, %ss and %ss' % cards)
لا تنتمي إلى StackOverflow