آرایه‌ها در پایتون


آرایه چیست؟

همان‌طور که پیداست، آرایه به معنی مرتّب شده می‌باشد؛ آن هم از راه افزودن چیزی، نه کاستن از آن.

توجّه به مفهوم آرایشگاه و پیرایشگاه این مطلب را روشن‌تر می‌کند!

در واقع یک نوع متغیّر ویژه است که می‌تواند بیش از یک مقدار را در خود نگه دارد.

به نمونه‌های زیر توجّه کنید:

دقّت داشته باشید که strtingها باید در double quotes () قرار بگیرند…

colors = [“Red”, “Green”, “Blue”]

person = [“Akbar”, “Asghari”, 0061269345, 1369, “Azar”, 12]

Index چیست؟

به اعضای آرایه، عددی نسبت داده می‌شود که به آن index number می‌گویند. دقّت داشته باشید که از صفر آغاز می‌شود.

colors = [“Red”, “Green”, “Blue”]

Index number:                    0            1            2

Access elements of an array

برای دسترسی به اعضای هر آرایه از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

x = colors[0]  –>  x = ‘Red’

Modify an element of an array

برای تغییر اعضای آرایه از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

colors[0] = “Yellow”  –>  colors = [“Yellow“, “Green”, “Blue”]

Number of elements of an array

برای دانستن تعداد اعضای هر آرایه از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

x = len(colors)  –>  x = 3

Looping elements of an array

برای دیدن کل اعضای هر آرایه با حلقه از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

for x in colors:

        print(x)

-> Red

    Green

    Blue

Add an element to an array

برای اضافه کردن یک عضو به اعضای هر آرایه از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

colors.append(“Yellow”)

–> colors = [“Red”, “Green”, “Blue”, “Yellow“]

Removing an element of an array

جهت پاک کردن یک عضو با کمک شماره index آن، مدل زیر را برمی‌گزینیم:

colors = [“Red”, “Green”, “Blue”]

colors.pop(2)

–> colors = [“Red”, “Green”]

جهت پاک کردن یک عضو از آرایه با کمک محتوای آن، از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

colors.remove(“Green”)

–> colors = [“Red”, “Blue”]

Practice 1

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

  1. ابتدا 4 ورودیِ مربوط به اعضای آرایه را از کاربر دریافت کند و به آن اضافه نماید.
  2. یک ورودی دریافت کند و به دلخواه محتوای یک عضور را تغییر دهد.
  3. عددی کمتر از تعداد فعلی آرایه دریافت کند و عضو آن شماره را پاک کند (کنترل ورودی فراموش نشود)!

تا به حال با یک مدل عمومی از آرایه آشنا شدیم که به نام List مشهور است و معمول‌ترین و کامل‌ترین نوع آرایه است. در اینجا به انواع آرایه‌ها که 4 مدل هستند اشاره می‌کنیم.

List –> [5, 7, “yes”, True, -2, 7]

Tuple –> (5, 7, “yes”, True, -2, 7)

Set –> {5, 7, “yes”, True, -2, 7}

Dictionary –> {“ali”:25, “hassan”:22}

انواع آرایه‌ها

Arrays

دقّت داشته باشید که انتخاب نوع آرایه در ابتدا بسیار مهم است؛ چون با دقّت در خصوصیّات آن‌ها می‌بینیم که کارایی و امنیّت در آن لحاظ شده و هرکدام برای کار خاصّی در نظر گرفته می‌شود.

مثال‌های زیر ظاهراً هم‌شکل به نظر می‌رسند، امّا از لحاظ کارایی و توانایی متفاوتند.

colors = [“Red”, “Green”, “Blue”]

colors = (“Red”, “Green”, “Blue”)

colors = {“Red”, “Green”, “Blue”}

colors = {

               “color1″:”Red”,

               “color2”:”Green”,

               “color3“:”Blue”

               }

List

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

در ضمن کامل‌ترین و ساده‌ترین نوع آن می‌باشد. علامت مشخّصه‌ی آن [ براکت ] است.

colors=[“Red”, “Green”, “Blue”]

person=[“Akbar”, “Asghari”, 0061269345, 1369, “Azar”, 12]

List Methods

Tuple

به معنی چندتایی است و برای کلکسیون‌هایی به کار می‌رود که نباید تغییر کنند؛ یعنی نتوان گزینه‌های آن را عوض نمود.

دقّت داشته باشید که

  • نه می‌توان به آن اضافه کرد،
  • نه می‌توان یک عضو را تغییر داد،
  • و نه از آن چیزی حذف کرد!

علامت مشخّصه‌ی آن ( پرانتز ) است.

colors=(“Red”, “Green”, “Blue”)

person=(“Akbar”, “Asghari”, 0061269345, 1369, “Azar”, 12)

Tuple Methods

Set

به معنی مجموعه است و عملاً مثل یک کلکسیون است که می‌توان اعضای آن را تغییر داد و به ان اضافه و از آن حذف کرد؛ ولی ترتیب ندارد و اعضاء به صورت تصادفی در آن قرار می‌گیرند و صدا زده می‌شوند.

علامت مشخّصه‌ی آن { آکولاد } است.

colors={“Red”, “Green”, “Blue”}

person={“Akbar”, “Asghari”, 0061269345, 1369, “Azar”, 12}

Set Methods

Dictionary

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

person={

                      “name”: “Akbar”,

                      “Fname”: “Asghari”,

                      “code”: 0061269345,

                      “year”: 1369,

                      “month”: “Azar”,

                      “day”: 12

              }

Dic Methods

Access the elements of an array

برای دسترسی به اعضای هر آرایه از مدل زیر استفاده می‌کنیم:

colors=[“Red”, “Green”, “Blue”]

x = colors[0] –> x = ‘Red’

Modify an elements of an array

برای تغییر اعضای آرایه از مدل زیر استفاده می‌کنیم:

colors=[“Red”, “Green”, “Blue”]

colors[0]=”Yellow” –> colors=[“Yellow“, “Green”, “Blue”]

Number of elements of an array

برای دانستن تعداد اعضای هر آرایه از مدل زیر استفاده می‌کنیم:

colors=[“Red”, “Green”, “Blue”]

x = len(colors) –> x = 3

Looping elements of an array

برای دیدن کل اعضای هر آرایه با حلقه از مدل زیر استفاده می‌کنیم:

colors=[“Red”, “Green”, “Blue”]

For x in colors:

        print(x)

-> Red

    Green

    Blue

Add an elements to array

برای اضافه کردن یک عضو به اعضای هر آرایه از مدل زیر استفاده می‌کنیم:

colors=[“Red”, “Green”, “Blue”]

colors.append(“Yellow”)

–> colors=[“Red”, “Green”, “Blue”, “Yellow“]

Removing an elements of array

جهت پاک کردن یک عضو با کمک شماره‌ی index آن، مدل زیر را برمی‌گزینیم:

colors = [“Red”, “Green”, “Blue”]

                                                                           2

colors.pop(2)

–> colors=[“Red”, “Green”]

Removing an elements of array

جهت پاک کردن یک عضو از آرایه با کمک محتوای آن، از مدل زیر استفاده می‌کنیم:

colors = [“Red”, “Green”, “Blue”]

colors.remove(“Green”)

–> colors=[“Red”, “Blue”]

Practice 2

از هر مدل آرایه یک نمونه بسازید و موارد گفته شده در اسلایدهای قبل برای اضافه و کم کردن اعضا و… را در مورد هر یک کنترل کنید.

نتیجه مهم نیست! مهم تست همه‌ی موارد است.