تبدیل نوع داده در پایتون

تبدیل نوع داده در پایتون | تایپ کستینگ | Type Casting4 دقیقه مطالعه

هدیه فنولوژی به شما

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

تبدیل نوع داده در پایتون

گاهی اوقات لازم است در برنامه‌های خود، یک نوع داده را به دیگری تبدیل کنیم؛ مثلا یک عدد integer را به float تبدیل کنیم. به فرایند تبدیل یک نوع داده ( integer ، string ، float و غیره) به نوع داده‌ی دیگر، Type conversion یا تبدیل نوع گفته می‌شود. پایتون دارای دو نوع تبدیل نوع داده است:

  • تبدیل ضمنی نوع داده | Implicit Type Conversion
  • تبدیل صریح نوع داده | Explicit Type Conversion

تبدیل نوع داده در پایتون: تبدیل ضمنی

در این نوع تبدیل، پایتون به صورت خودکار یک نوع داده را به نوع دیگر تبدیل می‌کند. این فرایند نیازی به دخالت کاربر ندارد. بیایید مثالی را ببینیم که در آن پایتون برای جلوگیری از از دست رفتن داده‌ها، نوع داده‌ی integer را به float تبدیل می‌کند.

مثال #۱: تبدیل integer به float

خروجی #۱:

در برنامه‌ی بالا،

  • ما دو متغیر num_int و num_flo را مقداردهی می‌کنیم و مجموع مقادیر آن‌ها را در متغیر جدیدی با نام num_new ذخیره می‌کنیم.
  • نوع داده‌های این سه شی، و مقدار داده‌ی num_new را در خروجی چاپ می‌کنیم.
  • در خروجی می‌توانیم ببینیم که نوع داده‌ی num_int یک integer است؛ در حالی که num_flo یک float است.
  • همچنین می‌بینیم که num_new نیز float است؛ زیرا پایتون همواره نوع داده‌های کوچک‌تر (در این‌جا integer ) را برای جلوگیری از از دست رفتن داده‌ها، به نوع بزرگ‌تر (در این‌جا float) تبدیل می‌کند.

حال ببینیم که اگر یک رشته را با یک عدد صحیح جمع کنیم چه اتفاقی می‌افتد و پایتون چگونه این کار را انجام می‌دهد.

مثال #۲: جمع داده‌ی string با integer

خروجی #۲:

در مثال بالا،

  • ما دو متغیر num_int و num_str را با هم جمع می‌کنیم. اولی از نوع integer و دومی از نوع string است.
  • همان‌طور که در خروجی می‌بینیم، TypeError را دریافت کرده‌ایم. پایتون در چنین شرایطی قادر به انجام تبدیل ضمنی نیست.

با این حال، برای این نوع تبدیل داده در پایتون، راه حلی وجود دارد که به عنوان تبدیل صریح شناخته می‌شود.

تبدیل نوع داده در پایتون: تبدیل صریح

در تبدیل نوع صریح، کاربران نوع داده‌ی یک شی را به نوع داده‌ی مورد نظر تبدیل می‌کنند. ما برای انجام تبدیل صریح نوع داده، از توابعی مانند ()int و  ()float و ()str و غیره استفاده می‌کنیم.

این روش تبدیل نوع داده در پایتون تایپ کستینگ (Type casting) نیز نامیده می‌شود.

مثال #۳: جمع داده‌ی string با integer به استفاده از تبدیل صریح

خروجی #۳:

در مثال بالا،

  • متغیرهای num_int و num_str را مقداردهی می‌کنیم و نوع داده‌ی آن‌ها را در خروجی چاپ می‌کنیم.
  • نوع داده‌ی num_str را با استفاده از دستور int() از نوع string به نوع integer تبدیل می‌کنیم.
  • حال که نوع هر دو داده یکسان است، پایتون قادر خواهد بود آن‌ها را با یکدیگر جمع کند.
  • در آخر مقدار و نوع داده‌ی num_sum را در خروجی چاپ می‌کنیم. مقدار این متغیر، همان طور که انتظار می‌رفت، integer است.

لیست کامل توابع تبدیل صریح در زیر آورده شده است:

dict() str()
set() int()
frozenset() float()
bool() complex()
bytes() complex()
bytearray() list()
memoryview() tuple()
range()

نکات مهم تبدیل نوع داده در پایتون

  • تبدیل نوع، تبدیل شی از یک نوع داده به نوع دیگر است.
  • تبدیل ضمنی نوع داده، به طور خودکار توسط مفسر پایتون انجام می‌شود. این تبدیل، برای جلوگیری از از دست رفتن داده‌ها انجام می‌شود.
  • تبدیل صریح نوع داده، تایپ کستینگ یا type casting نیز نامیده می‌شود. انواع داده‌ها با استفاده از توابع از پیش تعریف شده‌ای، توسط کاربر تبدیل می‌شوند.
  • در تایپ کستینگ، ممکن است از دست رفتن داده‌ها رخ دهد؛ چرا که ما اجبارا یک نوع داده را به دیگری تبدیل می‌کنیم.
تیم محتوایی فنولوژی
تیم محتوایی فنولوژی
گروهی از متخصصان حوزه‌های مختلف
از یادگیری تا استخدام با دوره‌های متخصص سون‌لرن
عضویت
اطلاع از
0 دیدگاه‌ها
بازخورد در متن
دیدن همه دیدگاه‌ها

فنولوژی را در شبکه‌های اجتماعی دنبال کنید

©۲۰۲۰ – کلیه حقوق مادی و معنوی متعلق به فنولوژی است.

عضویت در خبرنامه فنولوژی

جذاب‌ترین مطالب سایت را ماهانه دریافت کنید!

خبرنامه