مقدمة في علوم الحاسوب والبرمجة باستخدام Python › المحاضرة 14: القواميس (Dictionaries) 16 / 30 السابق التالي

المحاضرة 14: تمارين الأصابع وحلولها — المعاجم

المحاضرة 14: تمارين الأصابع وحلولها — المعاجم (Dictionaries)

المصدر: آنا بيل (Ana Bell)، معهد ماساتشوستس للتكنولوجيا، MIT OpenCourseWare، مقرر 6.100L: مقدمة في علوم الحاسوب والبرمجة باستخدام بايثون، خريف 2022 (Fall 2022). هذه ترجمة وتكييف عربيان غير رسميان بموجب CC BY-NC-SA 4.0، ولا تعنيان اعتماد MIT أو تأييده. شروط الاستخدام والإسناد.

المصادر الدقيقة: السؤال في صفحة المحاضرة، صفحة مورد الحل، PDF الحل الرسمي.

صفحة المصدر 1: تمارين الأصابع للمحاضرة 14

موعد تسليم الأسئلة أدناه: الاثنين 31 أكتوبر 2022، الساعة 03:00:00 مساءً. هذا هو موعد المقرر الأصلي، وليس موعدًا جديدًا لهذه الترجمة.

1) السؤال 1 من 2

نفّذ الدالة التي تستوفي المواصفة التالية:

def keys_with_value(aDict, target):
    """
    aDict: a dictionary
    target: an integer or string
    Assume that keys and values in aDict are integers or strings.
    Returns a sorted list of the keys in aDict with the value target.
    If aDict does not contain the value target, returns an empty list.
    """
    # Your code here

أمثلة:

aDict = {1:2, 2:4, 5:2}
target = 2
print(keys_with_value(aDict, target)) # prints the list [1,5]

دالتك هنا:

# your function here

تبقّى لك عدد لا نهائي من مرات التسليم.

هذا هو الحل الذي كتبناه:

def keys_with_value(aDict, target):
    target_keys = []
    for i in aDict.keys():
        if aDict[i] == target:
            target_keys.append(i)
    target_keys.sort()
    return target_keys

2) السؤال 2 من 2

نفّذ الدالة التي تستوفي المواصفة التالية:

def all_positive(d):
    """
    d is a dictionary that maps int:list
    Suppose an element in d is a key k mapping to value v (a non-empty list).
    Returns the sorted list of all k whose v elements sums up to a
    positive value.
    """
    # Your code here

أمثلة:

d = {5:[2,-4], 2:[1,2,3], 1:[2]}
print(all_positive(d)) # prints the list [1, 2]

دالتك هنا:

# your function here

تبقّى لك عدد لا نهائي من مرات التسليم.

هذا هو الحل الذي كتبناه:

def all_positive(d):
    L = []
    for k,v in d.items():
        if sum(v) > 0:
            L.append(k)
    return sorted(L)

ملاحظة تحريرية: نُسخت الشفرة من ملف PDF الرسمي مع الحفاظ على أسماء المتغيّرات وعلامات الاقتباس والمسافات البادئة.

صفحة المصدر 2: الإسناد

MIT OpenCourseWare — https://ocw.mit.edu

6.100L: مقدمة في علوم الحاسوب والبرمجة باستخدام بايثون.

خريف 2022.

للمعلومات المتعلقة بالاستشهاد بهذه المواد أو بشروط الاستخدام، زُر: https://ocw.mit.edu/terms