دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۶
  • اردیبهشت

جلسه ۱۵-۰۲ : عملگرهای پایه List در #F

  • دسته‌بندی‌ها :
جلسه ۱۵-۰۲ : عملگرهای پایه List در #F
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      سلام درود خدمت همراهان همیشگی سایت پی وی لرن . با آموزش زبان برنامه نویسی #F همراهتون هستیم. در این بخش ایجاد و آماده سازی Lists در #F رو در سه جلسه داریم .در ادامه انواع لیست ها و خصوصیات آن ها، عملگرهای پایه List در #F رو بررسی می نماییم. بنابراین در ادامه جدول عملگرهای پایه List در #F رو داریم.

      عملگرهای پایه List در #F

      در زیر جدول عملگرهای پایه List در #F رو داریم.

       مقدارتوضیحات
      forall : (‘T → bool) → ‘T list → boolتست این که تمام عناصر مجموعه بر اساس پیش فرض داده شده است.
      forall2 : (‘T1 → ‘T2 → bool) → ‘T1 list → ‘T2 list → boolتست این که آیا تمام عناصر متناظر مجموعه دو پیش فرض داده شده را برآورده می کنند .
      head : ‘T list → ‘Tاولین عنصر لیست را باز می گرداند.
      init : int → (int → ‘T) → ‘T listیک لیست ایجاد می کند با فراخوانی generator داده شده در هر ایندکس.
      isEmpty : ‘T list → boolاگر لیست حاوی هیچ عنصر نباشد true را برمی گرداند، در غیر اینصورت false را برمی گرداند.
      iter : (‘T → unit) → ‘T list → unitتابع داده شده را به هر عنصر مجموعه اعمال می کند.
      iter2 : (‘T1 → ‘T2 → unit) → ‘T1 list → ‘T2 list → unitتابع داده شده به طور همزمان به دو مجموعه اعمال می شود.

      مجموعه ها باید اندازه یکسان داشته باشند.

      iteri : (int → ‘T → unit) → ‘T list → unitتابع داده شده را به هر عنصر مجموعه اعمال می کند.

      عدد صحیح( integer ) منتقل شده به تابع ایندکس عنصر است.

      iteri2 : (int → ‘T1 → ‘T2 → unit) → ‘T1 list → ‘T2 list → unitتابع داده شده به طور همزمان به دو مجموعه اعمال می شود.

      مجموعه ها باید اندازه یکسان داشته باشند.

      عدد صحیح منتقل شده به تابع نشانگر ایندکس عنصر است.

      length : ‘T list → intطول لیست را برمی گرداند.
      map : (‘T → ‘U) → ‘T list → ‘U listیک مجموعه جدید ایجاد می کند که عناصر آن نتایج اعمال تابع داده شده به هر یک از عناصر مجموعه است.
      map2 : (‘T1 → ‘T2 → ‘U) → ‘T1 list → ‘T2 list → ‘U listیک مجموعه جدید ایجاد می کند که عناصر آن نتایج اعمال تابع داده شده به عناصر متناظر دو مجموعه است.
      map3 : (‘T1 → ‘T2 → ‘T3 → ‘U) → ‘T1 list → ‘T2 list → ‘T3 list → ‘U listیک مجموعه جدید ایجاد می کند که عناصر آن نتایج استفاده از تابع داده شده به عناصر مربوط به سه مجموعه به طور همزمان است.
      mapi : (int → ‘T → ‘U) → ‘T list → ‘U listیک مجموعه جدید ایجاد می کند که عناصر آن نتایج اعمال تابع داده شده به هر یک از عناصر مجموعه است.

      integer index منتقل شده به تابع نشان دهنده این است که ایندکس(از ۰) عنصر تبدیل می شود.

      mapi2 : (int → ‘T1 → ‘T2 → ‘U) → ‘T1 list → ‘T2 list → ‘U listمانند List.mapi، اما mapping عناصر مربوطه از دو لیست با طول برابر.
      max : ‘T list → ‘Tبزرگترین عنصر از لیست را برمی گرداند، با استفاده از Operators.max مقایسه می کند.
      maxBy : (‘T → ‘U) → ‘T list → ‘Tبزرگترین عنصر از لیست را باز می گرداند، با استفاده از Operators.max در نتیجه تابع مقایسه می شود.
      min : ‘T list → ‘Tکمترین مقدار تمام عناصر لیست را باز می گرداند،

      با استفاده از Operators.min مقایسه می کند.

      maxBy : (‘T → ‘U) → ‘T list → ‘Tکمترین مقدار تمام عناصر لیست را باز می گرداند، با استفاده از Operators.min در نتیجه تابع مقایسه می کند.
      nth : ‘T list → int → ‘Tایندکس ها در لیست. عنصر اول ایندکس ۰ دارد.
      ofArray : ‘T [] → ‘T listیک لیست از آرایه داده شده را ایجاد می کند.
      ofSeq : seq<‘T> → ‘T listیک لیست جدید از آبجکت قابل شمارش داده شده ایجاد می کند.
      partition : (‘T → bool) → ‘T list * ‘T listاین مجموعه را به دو مجموعه تقسیم می کند که شامل عناصری است که در آن پیش فرض داده شده به ترتیب true و false را باز می گرداند.
      permute : (int → int) → ‘T list → ‘T listلیستی از تمام عناصر تغییر یافته را با توجه به پرمیوم مشخص شده ، بازمی گرداند.
      pick : (‘T → ‘U option) → ‘T list → ‘Uتابع داده شده را به عناصر متوالی اعمال می کند.

      اولین نتیجه را باز می گرداند که در آن تابع Some را برای برخی از مقادیر به ارمغان می آورد.

      reduce : (‘T → ‘T → ‘T) → ‘T list → ‘Tیک تابع را برای هر عنصر مجموعه اعمال می کند، یک آرگومان accumulator را از طریق محاسبات تریدینگ می کند.

      این تابع، تابع مشخص شده را به دو عنصر اول لیست اعمال می کند.

      سپس این نتیجه را به تابع همراه با عنصر سوم منتقل می کند و غیره.

      در نهایت، نتیجه نهایی را برمی گرداند. اگر تابع ورودی f و عناصر i0 … iN باشد، این تابع f (… (f i0 i1) i2 …) iN را محاسبه می کند.

      reduceBack : (‘T → ‘T → ‘T) → ‘T list → ‘Tیک تابع را برای هر عنصر مجموعه اعمال می کند، یک آرگومان accumulator را از طریق محاسبات تریدینگ می کند.

      اگر تابع ورودی isf و عناصر i0 … iN باشد، این تابع(( f i0 (… (f iN-1 iN را محاسبه می کند.

      (replicate : (int → ‘T → ‘T listیک لیست ایجاد می کند با فراخوانی generator داده شده در هر ایندکس.
      rev : ‘T list → ‘T listیک لیست جدید را با عناصر در جهت معکوس بازمی گرداند.
      scan : (‘State → ‘T → ‘State) → ‘State → ‘T list → ‘State listیک تابع را برای هر عنصر مجموعه اعمال می کند، یک آرگومان accumulator را از طریق محاسبات تریدینگ می کند.

      این تابع آرگومان دوم را می گیرد و تابع مشخص شده را به آن و اولین عنصر لیست اعمال می کند.

      سپس، این نتیجه را به تابع همراه با عنصر دوم و غیره منتقل می کند.

      سرانجام، لیستی از نتایج واسطه و نتیجه نهایی را باز می گرداند.

      scanBack : (‘T → ‘State → ‘State) → ‘T list → ‘State → ‘State listمانند foldBack، اما نتایج هر دو میانه و نهایی را به دست می آورد
      sort : ‘T list → ‘T listفهرست داده شده را با استفاده از Operators.compare مرتب می کند.
      sortBy : (‘T → ‘Key) → ‘T list → ‘T listفهرست داده شده را با استفاده از کلیدهای داده شده توسط پروژه داده شده طبقه بندی می کند.

      کلید ها با استفاده از Operators.compare مقایسه می شوند.

      sortWith : (‘T → ‘T → int) → ‘T list → ‘T listفهرست داده شده را با استفاده از تابع مقایسه ی داده شده یا comparison طبقه بندی می کند.
      sum : ^T list → ^Tمجموع عناصر موجود در لیست را بازمی گرداند.
      sumBy : (‘T → ^U) → ‘T list → ^Uمجموع نتایج حاصل از اعمال تابع به هر عنصر لیست را باز گرداند.
      tail : ‘T list → ‘T listلیست input را بدون عنصر اول را برمی گرداند.
      []toArray : ‘T list → ‘Tآرایه را از لیست داده شده ایجاد می کند.
      <toSeq : ‘T list → seq<‘Tلیست داده شده را به عنوان دنباله ای مشاهده می کند.
      tryFind : (‘T → bool) → ‘T list → ‘T optionعنصر اول را برمی گرداند برای این که تابع داده شده true را بازگرداند.

      اگر چنین عنصری وجود نداشته باشد، None را بازمی گرداند.

      اینم از جدول عملگرهای پایه List در #F .ادامه جدول عملگرهای پایه List در #F رو در جلسه بعد خواهیم داشت.

      کلام پایانی

      متشکریم از همراهیتون. در بخش دوم عملگرهای پایه List در #F ، جدول عملگرهای پایه List در #F رو بیان نمودیم .

      در بخش سوم از سری آموزش های اف شارپ جدول عملگرهای پایه List در #F رو همراه مثال هایی ادامه می دهیم.

      دوستان پی وی لرن همراه مون باشید.

      QR:  جلسه ۱۵-۰۲ : عملگرهای پایه List در #F
      به اشتراک بگذارید