
مشاهده ویدیو قفل است
برای مشاهده مشاهده ویدیو، ابتدا این دوره را خریداری کنید.
متن فیلم
در این ویدیو، ما لیستها و تاپلها رو پوشش میدیم که به اونها انواع داده ترکیبی گفته میشه و یکی از انواع کلیدی در ساختمانهای داده پایتون هستند. تاپلها. تاپلها یک دنباله ترتیبپذیر هستند. در اینجا تاپل ratings را مشاهده میکنید. تاپلها به صورت عناصر جدا شده با کاما در داخل پرانتز بیان میشوند. اینها مقادیری هستند که در داخل پرانتز قرار میگیرند. در پایتون، انواع مختلفی وجود دارد، رشتهها، عدد صحیح، اعشاری. همه آنها میتوانند در یک تاپل قرار گیرند، اما نوع متغیر تاپل است. به هر عنصر یک تاپل میتوان از طریق یک اندیس دسترسی پیدا کرد. جدول زیر رابطه بین اندیس و عناصر موجود در تاپل را نشان میدهد. به عنصر اول میتوان با نام تاپل و به دنبال آن یک براکت مربعی با شماره اندیس دسترسی پیدا کرد. در این حالت، صفر است. میتوانیم به عنصر دوم به صورت زیر دسترسی پیدا کنیم. همچنین میتوانیم به عنصر آخر دسترسی پیدا کنیم. در پایتون، میتوانیم از اندیس منفی استفاده کنیم. رابطه به صورت زیر است. مقادیر مربوطه در اینجا نشان داده شدهاند. میتوانیم تاپلها را با جمع کردن آنها به هم متصل کنیم. نتیجه به صورت زیر با اندیس زیر است. اگر بخواهیم چندین عنصر از یک تاپل داشته باشیم، میتوانیم تاپلها را نیز برش دهیم. برای مثال، اگر سه عنصر اول را بخواهیم، از دستور زیر استفاده میکنیم. آخرین اندیس یکی بزرگتر از اندیس مورد نظر شماست. به طور مشابه، اگر دو عنصر آخر را بخواهیم، از دستور زیر استفاده میکنیم. توجه کنید که آخرین اندیس یکی بزرگتر از آخرین اندیس تاپل است. میتوانیم از دستور len برای بدست آوردن طول یک تاپل استفاده کنیم. از آنجایی که پنج عنصر وجود دارد، نتیجه پنج میشود. تاپلها تغییرناپذیر هستند، به این معنی که نمیتوانیم آنها را تغییر دهیم. برای اینکه ببینیم چرا این مهم است، بیایید ببینیم وقتی متغیر Ratings1 را روی Ratings تنظیم میکنیم چه اتفاقی میافتد. بیایید از تصویر برای ارائه توضیح سادهای از آنچه اتفاق میافتد استفاده کنیم. هر متغیر شامل یک تاپل نیست، اما به همان شیء تاپل تغییرناپذیر اشاره میکند. برای اطلاعات بیشتر در مورد اشیاء، به ماژول Objects and Classes مراجعه کنید. فرض کنید میخواهیم عنصر را در اندیس دو تغییر دهیم. از آنجایی که تاپلها تغییرناپذیر هستند، نمیتوانیم این کار را انجام دهیم. بنابراین، Ratings1 تحت تأثیر تغییر در Ratings قرار نمیگیرد زیرا تاپل تغییرناپذیر است، یعنی نمیتوانیم آن را تغییر دهیم. میتوانیم یک تاپل متفاوت را به متغیر Ratings اختصاص دهیم. متغیر Ratings اکنون به تاپل دیگری ارجاع میدهد. در نتیجه تغییرناپذیری، اگر بخواهیم یک تاپل را دستکاری کنیم، باید به جای آن یک تاپل جدید ایجاد کنیم. به عنوان مثال، اگر بخواهیم یک تاپل را مرتب کنیم، از تابع sorted استفاده میکنیم. ورودی، تاپل اصلی است. خروجی یک لیست مرتب شده جدید است. برای اطلاعات بیشتر در مورد توابع، به ویدیوی ما در مورد توابع مراجعه کنید. یک تاپل میتواند شامل تاپلهای دیگر و همچنین انواع دادههای پیچیده دیگر باشد. به این کار تودرتو میگویند. میتوانیم با استفاده از روشهای استاندارد اندیسگذاری به این عناصر دسترسی پیدا کنیم. اگر یک اندیس با یک تاپل انتخاب کنیم، همان قرارداد اندیس اعمال میشود. به این ترتیب، میتوانیم به مقادیر موجود در تاپل دسترسی پیدا کنیم. به عنوان مثال، میتوانیم به عنصر دوم دسترسی پیدا کنیم. میتوانیم این اندیسگذاری را مستقیماً به متغیر تاپل NT اعمال کنیم. میتوانیم این تودرتو بودن را به صورت یک درخت تجسم کنیم. این تاپل دارای اندیسهای زیر است. اگر اندیسهایی با تاپلهای دیگر را در نظر بگیریم، میبینیم که تاپل در اندیس ۲ شامل یک تاپل با دو عنصر است. میتوانیم به آن دو اندیس دسترسی داشته باشیم. همین قرارداد در مورد اندیس ۳ نیز صدق میکند. میتوانیم به عناصر موجود در آن تاپلها نیز دسترسی داشته باشیم. میتوانیم این فرآیند را ادامه دهیم. حتی میتوانیم با اضافه کردن یک براکت دیگر به سطوح عمیقتر درخت دسترسی پیدا کنیم. میتوانیم به کاراکترهای مختلف در رشته یا عناصر مختلف در تاپل دوم که در تاپل اول موجود است، دسترسی پیدا کنیم. لیستها همچنین یک ساختمان داده محبوب در پایتون هستند. لیستها نیز یک دنباله ترتیبپذیر هستند. در اینجا یک لیست L وجود دارد. یک لیست با براکتهای مربعی نمایش داده میشود. از بسیاری جهات، لیستها مانند تاپلها هستند. یک تفاوت کلیدی این است که آنها قابل تغییر هستند. لیستها میتوانند شامل رشتهها، اعداد اعشاری و اعداد صحیح باشند. میتوانیم لیستهای دیگر را تودرتو کنیم. همچنین تاپلها و سایر ساختمانهای داده را تودرتو میکنیم. همان قراردادهای اندیسگذاری برای تودرتوسازی نیز اعمال میشود. مانند تاپلها، به هر عنصر یک لیست میتوان از طریق یک اندیس دسترسی پیدا کرد. جدول زیر رابطه بین اندیس و عناصر موجود در لیست را نشان میدهد. به عنصر اول میتوان با نام لیست و به دنبال آن یک براکت مربعی با شماره اندیس، در این مورد 0، دسترسی پیدا کرد. میتوانیم به عنصر دوم به صورت زیر دسترسی پیدا کنیم. همچنین میتوانیم به عنصر آخر دسترسی پیدا کنیم. در پایتون، میتوانیم از اندیس منفی استفاده کنیم. رابطه به صورت زیر است. اندیسهای مربوط به صورت زیر هستند. همچنین میتوانیم برش را در لیستها انجام دهیم. به عنوان مثال، اگر دو عنصر آخر در این لیست را میخواهیم، از دستور زیر استفاده میکنیم. توجه کنید که آخرین اندیس یکی بزرگتر از طول لیست است. قراردادهای اندیس برای لیستها و تاپلها یکسان است. برای مثالهای بیشتر، آزمایشگاهها را بررسی کنید. میتوانیم لیستها را با جمع کردن به هم الحاق یا ترکیب کنیم. نتیجه به شرح زیر است. لیست جدید دارای اندیسهای زیر است. لیستها قابل تغییر هستند، بنابراین میتوانیم آنها را تغییر دهیم. به عنوان مثال، ما متد extends را با اضافه کردن یک نقطه و به دنبال آن نام متد و سپس پرانتز اعمال میکنیم. آرگومان داخل پرانتز، یک لیست جدید است که قرار است به لیست اصلی الحاق کنیم. در این حالت، به جای ایجاد یک لیست جدید، L1، لیست اصلی، L، با اضافه کردن دو عنصر جدید اصلاح میشود. برای کسب اطلاعات بیشتر در مورد متدها، ویدیوی ما در مورد اشیاء و کلاسها را ببینید. متد مشابه دیگر append است. اگر به جای extend از append استفاده کنیم، یک عنصر به لیست اضافه میکنیم. اگر به اندیس نگاه کنیم، فقط یک عنصر اضافه شده است. اندیس ۳ شامل لیستی است که ما اضافه کردهایم. هر بار که یک متد اعمال میکنیم، لیست تغییر میکند. اگر extend را اعمال کنیم، دو عنصر جدید به لیست اضافه میکنیم. لیست L با اضافه کردن دو عنصر جدید تغییر میکند. اگر رشته A را اضافه کنیم، با اضافه کردن رشته A، لیست را بیشتر تغییر میدهیم. از آنجایی که لیستها قابل تغییر هستند، میتوانیم آنها را تغییر دهیم. به عنوان مثال، میتوانیم عنصر اول را به صورت زیر تغییر دهیم. اکنون لیست به HardRock، 10، 1.2 تبدیل میشود. میتوانیم یک عنصر از لیست را با استفاده از دستور del حذف کنیم. ما به سادگی آیتم لیستی را که میخواهیم حذف کنیم به عنوان یک آرگومان مشخص میکنیم. به عنوان مثال، اگر میخواهیم عنصر اول را حذف کنیم، نتیجه 10، 1.2 میشود. میتوانیم عنصر دوم را حذف کنیم. این عملیات عنصر دوم را از لیست حذف میکند. میتوانیم یک رشته را با استفاده از split به یک لیست تبدیل کنیم. به عنوان مثال، متد split هر گروه از کاراکترهای جدا شده با یک فاصله را به یک عنصر از یک لیست تبدیل میکند. میتوانیم از تابع split برای جدا کردن رشتهها بر اساس یک کاراکتر خاص، که به عنوان جداکننده شناخته میشود، استفاده کنیم. ما به سادگی جداکنندهای را که میخواهیم روی آن تقسیم کنیم به عنوان یک آرگومان، در این مورد کاما، ارسال میکنیم. نتیجه یک لیست است که هر عنصر مربوط به مجموعهای از کاراکترهایی است که با کاما از هم جدا شدهاند. وقتی یک متغیر، B، را برابر با A قرار میدهیم، هم A و هم B به یک لیست ارجاع میدهند. نامهای متعدد که به یک شیء ارجاع میدهند، به عنوان نام مستعار (aliasing) شناخته میشوند. از اسلاید لیست میدانیم که اولین عنصر در B به عنوان HardRock تنظیم شده است. اگر اولین عنصر در A را به banana تغییر دهیم، یک اثر جانبی خواهیم داشت. در نتیجه، مقدار B تغییر خواهد کرد. A و B به یک لیست ارجاع میدهند، بنابراین اگر A را تغییر دهیم، لیست B نیز تغییر میکند. اگر اولین عنصر B را پس از تغییر لیست A بررسی کنیم، به جای HardRock، banana را دریافت میکنیم. میتوانید با استفاده از سینتکس زیر، لیست A را کپی کنید. متغیر A به لیست ارجاع میدهد. متغیر B به یک کپی یا کلون جدید از لیست اصلی ارجاع میدهد. حال اگر A را تغییر دهید، B تغییر نخواهد کرد. میتوانیم با استفاده از دستور help اطلاعات بیشتری در مورد لیست، تاپلها و بسیاری از اشیاء دیگر در پایتون کسب کنیم. کافیست لیست، تاپل یا هر شیء پایتون دیگری را ارسال کنید. برای کارهای بیشتر که میتوانید با لیستها انجام دهید، به آزمایشگاهها مراجعه کنید.
لیستها و تاپلها
توضیحات
ساختمان دادههای پایتون در این ماژول، ساختمان دادههای ضروری پایتون شامل لیستها، تاپلها، دیکشنریها و مجموعهها را بررسی خواهید کرد. با شروع از لیستها و تاپلها، یاد میگیرید که چگونه مجموعههای داده را با استفاده از تکنیکهای اندیسگذاری (indexing)، برشزنی (slicing) و مرتبسازی (sorting) ذخیره و دستکاری کنید. از طریق آزمایشگاههای عملی، عملیات کلیدی مانند کپی کردن لیستها و انجام دستکاریهای تاپل را تمرین خواهید کرد. سپس ماژول به معرفی دیکشنریها میپردازد، جایی که دادهها در جفتهای کلید-مقدار ذخیره میشوند، و شما تجربه عملی در ایجاد و کار با آنها کسب خواهید کرد. در نهایت، مجموعهها را بررسی خواهید کرد، که مجموعهای بدون ترتیب و فقط شامل عناصر منحصربهفرد هستند، و یاد میگیرید که چگونه عملیات مجموعه و وظایف مبتنی بر منطق را انجام دهید. در پایان این ماژول، درک قوی و اساسی از این ساختمان دادههای اصلی پایتون خواهید داشت. اهداف یادگیری ____________________________________________________________________ • توصیف و دستکاری ترکیبات تاپل و دادههای لیست. • اجرای عملیات پایه تاپل در پایتون، شامل اندیسگذاری، برشزنی و مرتبسازی. • انجام عملیات مختلف لیست در پایتون، مانند اندیسگذاری، دستکاری و کلون کردن. • توضیح ساختار و عملکرد دیکشنریها در پایتون با استفاده از جفتهای کلید-مقدار برای ذخیره دادهها. • ایجاد و دستکاری دیکشنریها، انجام عملیاتی مانند افزودن، دسترسی و تغییر جفتهای کلید-مقدار. • توصیف ویژگیهای مجموعهها و تفاوت آنها با لیستها و تاپلها، با تمرکز بر منحصر به فرد بودن و ساختار بدون ترتیب. • ایجاد و کار با مجموعهها در پایتون، انجام عملیات پایه و مقایسههای مبتنی بر منطق. ماژول را با ویدئوی لیستها و تاپلها شروع میکنیم. اینها به عنوان انواع دادههای ترکیبی شناخته میشوند و یکی از انواع کلیدی در ساختمانهای داده پایتون هستند.
برای مشاهده کامل این قسمت، دوره را تهیه کنید
پس از خرید، به همه قسمتهای این دوره دسترسی خواهید داشت.