• 1

كيف أُرجع قيمتين من دالة في بايثون؟

أكتب حاليا برنامجا وأحتاج إلى إرجاع قيمتين من دالة موجودتين في متغيرين مختلفين:

def select_choice():
    loop = 1
    row = 0
    while loop == 1:
        print('''Choose from the following options?:
                 1. Row 1
                 2. Row 2
                 3. Row 3''')

        row = int(input("Which row would you like to move the card from?: "))
        if row == 1:
            i = 2
            card = list_a[-1]
        elif row == 2:
            i = 1
            card = list_b[-1]
        elif row == 3:
            i = 0
            card = list_c[-1]
        return i
        return card

عندما حاولت استخدام return i, card قام بايثون بإرجاع tuple، فهل هنالك طريقة أخرى لفعل ذلك؟

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


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

هنالك العديد من الطرق في لغة بايثون لإرجاع أكثر من قيمة من دالة، والطريقة الصحيحة والأسهل لفعل ذلك هي التي ذكرتها return (i, card) فهذه الطريقة تُرجع لك tuple ويمكنك فكّه فيما بعد كما هي الحال مع القوائم والقواميس كما في المثال التالي:

def select_choice():
    ...
    return (i, card)

my_i, my_card = select_choice()

حيث عند الاستدعاء سنضع أسماء المتغيرات التي نرغب في أن نحصل على قيمها التي تم إرجاعها كما لاحظنا في المثال السابق.

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


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

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

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

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


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

تسجيل الدخول

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


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