کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش تکنیک های حلقه در پایتون


آموزش تکنیک های حلقه در برنامه نویسی python


هنگامی که در دیکشنری ها از حلقه استفاده شود، می توان با استفاده از متد items() کلید و مقدار متناظر با آن را به طور همزمان بازیابی کرد.

    >>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}
    >>> for k, v in knights.items():
    ...     print(k, v)
    ...
    gallahad the pure
    robin the brave

هنگامی که در یک دنباله از حلقه استفاده شود، با استفاده از تابع enumerate() میتوان اندیس مکان و مقدار متناظر با آن را به صورت همزمان بازیابی کرد.

    >>> for i, v in enumerate(['tic', 'tac', 'toe']):
    ...     print(i, v)
    ...
    0 tic
    1 tac
    2 toe

برای حلقه زدن روی دو یا بیشتر دنباله به صورت همزمان، ورودی ها با استفاده از تابع zip() می توانند جفت شوند.

    >>> questions = ['name', 'quest', 'favorite color']
    >>> answers = ['lancelot', 'the holy grail', 'blue']
    >>> for q, a in zip(questions, answers):
    ...     print('What is your {0}?  It is {1}.'.format(q, a))
    ...
    What is your name?  It is lancelot.
    What is your quest?  It is the holy grail.
    What is your favorite color?  It is blue.

برای حلقه زدن روی یک دنباله به صورت معکوس، ابتدا دنباله را در جهت رو به جلو مشخص کنید، سپس تابع reversed() را فراخوانی کنید.

    >>> for i in reversed(range(1, 10, 2)):
    ...     print(i)
    ...
    9
    7
    5
    3
    1

برای حلقه زدن روی یک دنباله به صورت مرتب شده، از تابع sorted() استفاده کنید که یک لیست جدید مرتب شده را باز می گرداند و در دنباله اولیه تغییری ایجاد نمی کند.

    >>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
    >>> for f in sorted(set(basket)):
    ...     print(f)
    ...
    apple
    banana
    orange
    pear

گاهی اوقات تغییر یک لیست زمانی که در حال استفاده از حلقه روی آن هستید، تحریک کننده است. هر چند اغلب ایجاد یک لیست جدید به جای آن ساده تر و امن تر است.

    >>> import math
    >>> raw_data = [56.2, float('NaN'), 51.7, 55.3, 52.5, float('NaN'), 47.8]
    >>> filtered_data = []
    >>> for value in raw_data:
    ...     if not math.isnan(value):
    ...         filtered_data.append(value)
    ...
    >>> filtered_data
    [56.2, 51.7, 55.3, 52.5, 47.8]

1403/05/28 2979 727
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...