فصل چهارم آموزش پایتون مقدماتی - انواع متغیرها (انتشار: 1402/07/30)

متغیرها، چیزی به غیر از رزرو کردن مکانی از حافظه برای ذخیره‌‌ی مقادیر نیستند. این بدان معنی‌‌است که زمان ایجاد یک متغیر، مقداری از حافظه را رزرو می‌‌کنید. مترجم پایتون، حافظه را بر اساس نوع داده‌‌ی متغیر، اختصاص‌‌داده و تصمیم می‌‌گیرد که چه چیزی می‌‌تواند در حافظه‌‌ی رزرو شده، ذخیره‌‌شود. بنابراین با اختصاص انواع داده‌‌های مختلف به متغیرها، می‌‌توانید عدد صحیح، اعشاری ویا کاراکتر را در این متغیرها ذخیره‌‌نمایید.

این چیه؟

4-1- انتساب مقادیر به متغیرها

متغیرهای پایتون برای رزرو حافظه، نیازی به اعلان صریح ندارند. زمانی که شما مقداری را برای یک متغیر اختصاص‌‌دهید، این اعلان، به صورت خودکار اتفاق می‌‌افتد. در پایتون، برای اختصاص مقادیر به متغیرها، از علامت مساوی استفاده می‌‌شود. همان گونه که در شکل (4-1) مشاهده می‌‌کنید، عمل‌‌وند سمت چپِ عملگرمساوی، نام متغیر و عمل‌‌وند سمت راست، مقدار ذخیره‌‌شده در متغیر است.

پایتون-شکل1-4

در این جا، 100، 1000.0و "جان" مقادیر اختصاص داده‌‌شده و counter از نوع صحیح، miles از نوع اعشاری و name از نوع رشته، نام متغیرها هستند. همچنین متغیر اول از نوع عدد صحیح، دومی از نوع اعشاری و در نهایت سومی از نوع رشته می‌‌باشد. نتیجه‌‌ی اجرای قطعه کد شکل (4-1) را در شکل (4-2) می‌‌بینید.

پایتون-شکل2-4

4-2- انتساب چندگانه

همان گونه که در شکل (4-3) مشاهده می‌‌نمایید، یکی از ویژگی‌‌های پایتون این است که به شما اجازه می‌‌دهد یک مقدار واحد را به چندین متغیر، اختصاص دهید. در این جا، یک شی، از نوع صحیح با مقدار 1 ایجاد شده و همه‌‌ی متغیرها به یک مکان از حافظه اختصاص داده می‌‌شوند.

پایتون-شکل3-4

البته می‌‌توانید اشیای چندگانه را نیز، هم ‌زمان به ‌چندین متغیر اختصاص‌‌دهید. نمونه‌‌ای از آن را در شکل (4-4) می‌‌بینید. در این جا دو متغیر صحیح، با مقادیر 1 و 2 به ترتیب به متغیرهای a و b اختصاص داده‌‌شده و یک رشته با مقدار john به متغیر c اختصاص داده می‌‌شود.

پایتون-شکل4-4

4-3- انواع داده‌‌ی استاندارد

اطلاعات ذخیره‌‌شده در حافظه می‌‌تواند از انواع مختلفی باشد. به عنوان مثال، سن یک فرد از نوع عدد صحیح و آدرس او از نوع رشته ذخیره می‌‌شود. پایتون دارای انواع داده‌ی استاندارد مختلفی است که برای عملیات ممکن، روی آن‌‌ها و روش ذخیره‌‌سازی متفاوت برای هر یک از آن‌‌ها، تعریف و استفاده می‌‌شوند. زبان پایتون، دارای 5 نوع داده استاندارد به صورت، عدد (Number)، رشته (String)، لیست (List)، چندتایی (Tuple) و فرهنگ‌‌لغت (Dictionary) است.

4-3-1- نوع داده‌‌ی عددی

این نوع داده، برای ذخیره‌‌ی مقادیر عددی استفاده می‌‌شود. برای ایجاد نوع داده‌‌ی عددی کافی‌‌است مقداری به این نوع اختصاص داده‌‌شود.

پایتون-شکل5-4

همانند شکل (4-6) می‌‌توانید به وسیله دستور del statement مرجع یک یا چند شی عددی را حذف‌‌کنید.

پایتون-شکل6-4

مثالی از کاربرد این دستور را در شکل (4-7) مشاهده می‌‌کنید.

پایتون-شکل7-4

پایتون از چهار نوع داده‌‌ی عددی پشتیبانی می‌‌کند که نمونه‌‌هایی از آن‌‌ها را در شکل (4-8) می‌‌بینید.

یک) int : عدد صحیح علامت‌‌دار

دو) long : عدد صحیح بزرگ که علاوه بر مبنای 10، می‌‌توان آن را به صورت مبنای شانزده ویا هشت نمایش داد.

سه) float : اعداد اعشاری شناور

چهار) complex : اعداد مختلط

پایتون-شکل8-4

حال به ارائه‌‌ی چندین نکته در مورد این نوع داده می‌‌پردازیم.

  • برای مشخص‌‌کردن اعداد long می‌‌توانید از حرف بزرگ ویا کوچک L استفاده‌‌کنید. البته برای جلوگیری از اشتباه گرفته‌‌شدن آن با عدد یک انگلیسی (l و 1)، بهتر است از حرف بزرگ آن استفاده‌‌نمایید.
  • هر عدد مختلط، از دو بخش حقیقی و موهومی تشکیل شده‌‌است. برای مثال عدد X+Yj را درنظر بگیرید. در این عدد، X و Y ، از نوع حقیقی بوده و j از نوع واحد یا یکه‌‌ی موهومی است. البته این نوع اعداد در پایتون کاربرد چندانی ندارند.

4-3-2- نوع داده‌‌ی رشته‌‌ای

رشته‌‌ها در پایتون، به عنوان مجموعه‌‌ای از کاراکترهای موجود در بین علامت‌‌های تک‌‌کوتیشن ویا جفت‌‌کوتیشن، شناخته می‌‌شوند. هر زیرمجموعه‌‌ای از یک رشته می‌‌تواند با استفاده از عملگرهای برش ([] و [:]) جدا شود. اندیس شروع هر رشته، مقدار صفر و انتهای آن، 1- است.

همانند شکل (4-9)، برای اتصال دو یا چند رشته به هم، علامت جمع به کار می‌‌رود. همچنین از علامت ستاره، برای تعیین تعداد تکرار یک رشته استفاده می‌‌شود.

پایتون-شکل9-4

نتیجه‌‌ی اجرای این قطعه کد، در شکل (4-10) آمده‌‌است. همان گونه که می‌‌بینید، نتیجه‌‌ی اجرای پرینت‌‌ها به این شرح است.

  • اولین: چاپ کامل رشته‌‌ی str
  • دومین: چاپ اولین کاراکتر از رشته
  • سومین: چاپ کاراکترهای سوم تا پنجم
  • چهارمین: چاپ کاراکترهای سوم به بعد
  • پنجمین: چاپ رشته‌‌ی str دوبار پشت سر هم
  • ششمین: چاپ ترکیبی از رشته‌‌ی str و رشته‌‌ی TEST
پایتون-شکل10-4

4-3-3- نوع داده‌‌ی لیست

ترکیبی از انواع مختلفی از داده‌‌ها در پایتون، یک لیست را تشکیل می‌‌دهند. عناصر موجود در لیست، توسط ویرگول ازهم جدا شده و همگی درون کروشه‌‌ها قرار می‌‌گیرند. می‌‌توان گفت که تا حدودی، لیست‌‌ها شبیه به آرایه‌‌های زبان C هستند، با این تفاوت که همه‌‌ی عناصر آرایه‌‌ها، بایستی از یک نوع باشند، در حالی که، یک لیست می‌‌تواند شامل چندین نوع داده باشد.

همان طوری که در شکل (4-11) می‌‌بینید، تمامی موارد اندیس‌‌ها و علامت‌‌های جمع و ستارهمنتسب به رشته‌‌ها، در لیست‌‌ها نیز کاربرد دارند. همچنین نتیجه‌‌ی اجرای قطعه کد مذکور، در شکل (4-12) قابل مشاهده است.

پایتون-شکل1112-4

تنها تفاوت عمده‌‌ی خروجی مثال رشته‌‌ها و لیست‌‌ها، در این است که در رشته‌‌ها، اندیس به کاراکتر اشاره دارد، در حالی که در لیست می‌‌تواند این اندیس، یک کاراکتر، عدد، رشته و هر نوع داده دیگری باشد.

4-3-4- نوع‌‌داده‌‌ی چندتایی یا تاپل

یک تاپل، نوع دیگری از داده‌‌های ترتیبی شبیه به لیست است. عناصر هر تاپل با ویرگول از هم جدا می‌‌شوند. همچنین بر خلاف لیست‌‌ها، آن‌‌ها، درون پرانتز قرار می‌‌گیرند. از دیگر تفاوت‌‌های این دو نوع، امکان به‌‌روز رسانی آن‌‌هاست. عناصر تاپل‌‌ها، قابل تغییر نبوده و از آن‌‌ها به عنوان لیست‌‌های فقط خواندنی نام برده می‌‌شود. نمونه‌‌ای از تاپل‌‌ها در شکل (4-13) قابل مشاهده است.

پایتون-شکل13-4

توضیحات ارائه‌‌شده برای لیست‌‌ها در خروجی این قطعه کد یعنی شکل (4-14) نیز صدق می‌‌کند.

پایتون-شکل14-4

حال با توجه به مطالب ارائه‌‌شده، می‌‌توان گفت که در قطعه کد (4-15) خط چهارم، دارای اشتباه گرامری است. دلیل خطای برنامه این است که ما مجوز تغییر مقدار عناصر تاپل‌‌ها را نداریم. البته این عمل در لیست‌‌ها، مجاز بوده و قابل اجرا است.

پایتون-شکل15-4

4-3-5- نوع داده‌‌ی فرهنگ‌‌لغت یا دیکشنری

دیشکنری‌‌های پایتون، نوعی از انواع جدول هش هستند. آن‌‌ها مانند آرایه‌‌های ‌انجمنی یا هش‌‌های موجود در Perl هستند. به عبارتی دیگر، شامل دوتایی‌‌های کلید و مقدار هستند. با وجود این که کلیدها، تقریبا می‌‌توانند هر نوع داده‌‌ی پایتونی را شامل شوند، اما معمولا از اعداد ویا رشته‌‌ها استفاده می‌‌کنند. از سوی دیگر، مقادیر نیز می‌‌توانند شامل هر نوع داده‌‌ی دلخواه پایتون باشند.

همانند شکل (4-16)، دیکشنری‌‌ها توسط علامت‌‌های { } محصور می‌‌شوند. برای مقداردهی آن‌‌ها نیز می‌‌توان از [ ] استفاده‌‌کرد.‌‌

پایتون-شکل16-4

نتیجه‌‌ی اجرای این قطعه کد را می‌‌توان در شکل (4-17) مشاهده‌‌کرد. همان گونه که می‌‌بینید، نتیجه‌‌ی اجرای پرینت‌‌ها، به این شرح است:

  • اولین: چاپ مقدار ثبت‌‌شده برای کلید one
  • دومین: چاپ مقدار ثبت‌‌شده برای کلید 2
  • سومین: چاپ همه کلیدها و مقادیر موجود در دیکشنری
  • چهارمین: چاپ فقط کلیدها
  • پنجمین: چاپ فقط مقادیر
پایتون-شکل17-4

هیچ مفهومی از نظم در میان عناصر دیکشنری‌‌ها وجود ندارند. عناصر دیکشنری‌‌ها "درهم و آشفته" نیستند ولی می‌‌توان گفت که نامرتب هستند.

4-4- تبدیل انواع‌‌داده‌‌ها

آخرین موضوعی که در مورد آن، در این فصل بحث خواهیم‌‌نمود، تبدیل انواع داده به یکدیگر است. گاهی اوقات ممکن‌‌است شما نیاز به تبدیل بین دو نوع داده داشته‌‌باشید، برای این کار، به آسانی می‌‌توان از نام نوع داده‌‌ی مقصد، به عنوان تابع تبدیل استفاده‌‌کرد.

در شکل (4-18)، لیستی از این توابع را به صورت جدول برای شما به نمایش می‌‌گذاریم که شامل نام توابع و توضیحات آن‌‌ها خواهدبود. لازم به ذکر است که استفاده از عبارات داخل [ ] اختیاری است. همچنین ورودی‌‌های تابع بایستی شرایط تبدیل‌‌شدن را داشته‌‌باشند.

پایتون-شکل18-4

 

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


نظرات خوانندگان نوشته


نظری در این مورد دارید؟ خوشحال می‌شیم اون رو برامون ارسال کنید.