تاپل – ظروف غیر قابل تغییر
درست مانند لیست ها، تاپل ها نیز بخشی از زبان اصلی پایتون هستند. اما برخلاف لیست ها، اشیاء تاپل پایتون تغییر ناپذیر هستند. این یعنی عناصر را نمی توان به صورت پویا اضافه یا حذف کرد – همه عناصر یک tu ple باید در زمان ایجاد تعریف شوند. درست مانند لیست ها، تاپل ها می توانند عناصری از انواع داده های دلخواه را در خود نگه دارند. داشتن این انعطاف پذیری قدرتمند است، اما باز هم به این معنی است که داده ها کمتر است نسبت به آرایه تایپ شده محکم بسته بندی شده است.>>> arr[0] >>> arr = ‘one’, ‘two’, ‘three’ ‘one’ >>> arr # Tuples have a nice repr: (‘one’, ‘two’, ‘three’)>>> arr[1] = ‘hello’ # Tuples are immutable: TypeError: >>> del arr[1] “‘tuple’ object does not support item assignment” “‘tuple’ object doesn’t support item deletion” # Tuples can hold arbitrary data types: TypeError: # (Adding elements creates a copy of the tuple) (‘one’, ‘two’, ‘three’, 23)array.array – آرایه های تایپ پایه >>> arr + (23,) ماژول آرایه پایتون ذخیره سازی فضای کارآمد انواع داده های پایه سبک C مانند بایت ها، اعداد صحیح 32 بیتی، اعداد ممیز شناور و آرایه های ایجاد شده با کلاس array.array قابل تغییر هستند و رفتار می کنند مشابه لیست ها، به جز یک تفاوت مهم – آنها “تایپ شده اند به زودی. به دلیل این محدودیت، اشیاء array.array با عناصر زیاد آرایهها به یک نوع داده محدود میشوند. 10 نسبت به لیست ها و تاپل ها فضا کارآمدتر هستند. عناصر ذخیره شده در آنها به خوبی بسته بندی شده اند و در صورت نیاز به نگهداری این می تواند مفید باشد همچنین، آرایه ها از بسیاری از روش های مشابه لیست های معمولی پشتیبانی می کنند ممکن است بتوانید بدون نیاز به تغییرات دیگری در کد برنامه خود، از آنها به عنوان “جایگزین کشویی” استفاده کنید. >>> import array بسیاری از عناصر از همان نوع >>> arr = array.array(‘f’, (1.0, 1.5, 2.0, 2.5))1.5 >>> arr[1] # Arrays have a nice repr: array(‘f’, [1.0, 1.5, 2.0, 2.5]) >>> arr # Arrays are mutable: >>> arr >>> arr[1] = 23.0 array(‘f’, [1.0, 23.0, 2.0, 2.5]) >>> arr >>> del arr[1] array(‘f’, [1.0, 2.0, 2.5]) >>> arr >>> arr.append(42.0) array(‘f’, [1.0, 2.0, 2.5, 42.0]) >>> arr[1] = ‘hello’ # Arrays are “typed”: TypeError: “must be real number, not str”پایتون 3.x از اشیاء str برای ذخیره داده های متنی به عنوان دنباله های غیرقابل تغییر کاراکترهای یونیکد استفاده می کند. str یک آرایه غیرقابل تغییر از کاراکترها است. به اندازه کافی عجیب، این یک ساختار داده بازگشتی است – هر کاراکتر در یک رشته یک شی str از طول 1 خود str – آرایه های غیرقابل تغییر از کاراکترهای یونیکد اشیاء رشته ای از نظر فضا کارآمد هستند، زیرا آنها کاملاً بسته بندی شده اند و آنها در یک نوع داده واحد تخصص دارند. اگر متن یونیکد را ذخیره می کنید، شما باید از آنها استفاده کند. از آنجایی که رشته ها در پایتون تغییر ناپذیر هستند، تغییر رشته مستلزم ایجاد یک کپی تغییر یافته است. نزدیکترین معادل a “رشته قابل تغییر” کاراکترهای فردی را در یک لیست ذخیره می کند.
قوانین ارسال دیدگاه در سایت