القوائم (القائمة) في بايثون. قائمة الوظائف والطرق

في البرمجة ، ربما تكون القوائم مفيدة في بنية البيانات مثل المصفوفات. ما هي القوائم وكيفية إنشائها؟ كيف تعمل مع القوائم في بايثون؟ سوف تتعلم عن هذا من مقالتنا.

ما هي القوائم في بايثون؟

القوائم (القائمة) في بايثون. قائمة الوظائف والطرق
أنواع بيانات بايثون: القوائم

يمكن تحديد القوائم جزئيًا باستخدام المصفوفات ، لكن الاختلاف في القوائم ومزاياها (وإلا يطلق عليها أيضًا قوائم) هو أنها يمكن أن تجمع بين أنواع بيانات مختلفة. وهذا يعني أن القائمة تفتح المزيد من الاحتمالات لتخزين أي تسلسل للكائنات. يحتوي المتغير ، المسمى قائمة ، على إشارة إلى بنية في الذاكرة تحتوي على إشارات إلى بنى بديلة.

القائمة في بايثون هي مجموعة مرتبة من الكائنات ذات الأنواع المختلطة التي يمكن تعديلها والتي قد تختلف كائناتها.

ماذا يعني ذلك؟ دعونا نلقي نظرة على التعريف بالتفصيل.

يمكن تغيير حجم القائمة ، وتقليلها ، وإضافة أسطر جديدة إليها. يمكنك أيضًا تغيير هيكل القائمة بالكامل. ضع في اعتبارك أنه في كل مرة يتم فيها استخدام طريقة في القائمة ، يتم تغيير القائمة الأصلية ، وليس النسخة.

لمزيد من الوضوح ، يمكنك التفكير في القائمة في Python كقائمة من المنتجات التي يجب شراؤها في متجر. إذا كانت جميع العناصر الضرورية ، عند وضع خطة تسوق ، موجودة واحدة أسفل الأخرى ، ولكل منها سطر خاص بها ، فإن القائمة في Python تحتوي على جميع العناصر مفصولة بفواصل وفي أقواس مربعة حتى تتمكن Python من فهم ذلك يشار إلى قائمة هنا. العناصر محاطة بعلامات اقتباس. هذا شرط إلزامي ، لأن كل عنصر عبارة عن سطر منفصل.

طرق إنشاء قائمة

بالانتقال إلى المثال الكلاسيكي ، لنقم بإنشاء قائمة سنستخدمها ونعدلها في المستقبل. هناك عدة طرق لإنشاء القوائم.

واحد منهم هو التطبيق قائمة الوظائف المضمنة (). للقيام بذلك ، تحتاج إلى معالجة أي كائن يمكن تكراره (سلسلة أو مجموعة أو قائمة موجودة). في هذه الحالة ، سلسلة.

إليك ما سيحدث في النهاية:

>>> list ('list') ['c'، 'n'، 'i'، 'c'، 'o'، 'to']

يوضح المثال الثاني أن القوائم يمكن أن تحتوي على عدد غير محدود من الكائنات المختلفة جدًا. أيضا ، يمكن أن تظل القائمة فارغة.

>>> s = [] # قائمة فارغة >>> l = ['s'، 'p'، ['isok']، 2] >>> s [] >>> l ['s'، 'p' ، ['isok']، 2]

الطريقة التالية ، الثالثة ، لتشكيل القوائم هي ما يسمى مولد القائمة.

مُنشئ القائمة هو بناء نحوي لإنشاء القوائم. إنه مشابه لحلقة for.

>>> c = [c * 3 لـ c في 'list'] >>> c ['lll'، 'iii'، 'sss'، 'ttt']

يمكن استخدامه أيضًا لإنشاء هياكل أكثر ضخامة:

>>> c = [c * 3 لـ c في 'قائمة' if c! = 'i'] >>> c ['lll'، 'sss'، 'ttt'] >>> c = [c + d لـ c في 'list' if c! = 'i' لـ d في 'البريد العشوائي' إذا كان d! = 'a'] >>> c ['ls'، 'lp'، 'lm'، 'ss'، 'sp' ، 'sm'، 'ts'، 'tp'، 'tm']

ومع ذلك ، فإن طريقة الإنشاء هذه ليست فعالة دائمًا عند تجميع قوائم متعددة. لذلك ، يُنصح باستخدام حلقة for لإنشاء القوائم.

إذا كنت بحاجة للإشارة إلى أي عنصر من القائمة ، فسيتم استخدام الفهارس. كل عنصر له فهرس خاص به.

الفهرس هو رقم العنصر في القائمة.

إذا كنت تريد ملء القائمة بعناصر متطابقة متكررة ، فسيتم استخدام الرمز *. على سبيل المثال ، تحتاج إلى إضافة ثلاثة أرقام متطابقة إلى القائمة: [100] * 3.

وظائف القائمة

وظائف - ربما تكون هذه هي الميزة الرئيسية لبايثون على لغات البرمجة الأخرى. يمكن تطبيق الوظائف الأساسية المضمنة على القوائم.

فكر في أكثرها شيوعًا:

  • قائمة (النطاق ()) - إذا كانت المهمة هي إنشاء قائمة متسلسلة ، فسيتم استخدام وظيفة النطاق. هذه الوظيفة لها الأشكال التالية:
  1. النطاق (النهاية). يتم استخدامه عندما يكون من الضروري إنشاء قائمة من الصفر إلى رقم محدد.
  2. النطاق (البداية ، النهاية). تم تحديد كل من أرقام البداية والنهاية.
  3. النطاق (البداية ، النهاية ، الخطوة). تحدد معلمة الخطوة خاصية التحديد. على سبيل المثال ، إذا كنت بحاجة إلى تحديد كل رقم خامس من تسلسل من 1 إلى 21 ، فإن القائمة الناتجة ستبدو كما يلي: [10,15 ، 20 ، XNUMX].

يمكن أن تقلل وظيفة النطاق بشكل كبير من مقدار الكود.

  • الكتان (قائمة) - يسمح لك بمعرفة عدد العناصر الموجودة في القائمة.
  • مرتبة (قائمة ، [مفتاح]) - يقوم بفرز الكائنات في القائمة بترتيب تصاعدي.
  • ماكس (قائمة) - تسترجع أكبر عنصر.
  • دقيقة (قائمة) - الوظيفة المعاكسة - تسمح لك بإرجاع العنصر بأقل قيمة.

يمكنك أيضًا استخدام وظائف مضمنة أخرى:

  • list (tuple) - يحول كائن tuple إلى قائمة.
  • مجموع (قائمة) - جمع جميع العناصر في القائمة إذا كانت جميع القيم أرقامًا ، وينطبق على كل من الأعداد الصحيحة والكسور العشرية. ومع ذلك ، فهي لا تفهمها دائمًا بشكل صحيح. إذا كان هناك عنصر غير رقمي في القائمة ، فستظهر الوظيفة خطأ: "TypeError: نوع (أنواع) المعامل غير المدعوم لـ +: 'int' و 'str'".

طرق القيد

القوائم (القائمة) في بايثون. قائمة الوظائف والطرق
قائمة طرق بايثون

دعنا نعود إلى قائمة العناصر التي نشتريها في المتجر ونسميها قائمة التسوق:

قائمة التسوق = []

بعد ذلك ، ضع في اعتبارك طرق الإدراج:

  • إلحاق (عنصر) - بمساعدتها ، يمكنك إضافة عنصر إلى القائمة. في هذه الحالة ، سيكون العنصر الجديد في النهاية.

دعنا نملأ قائمتنا الجديدة بالمنتجات المناسبة:

shoplist.append (خبز)

shoplist.append (حليب)

  • قائمة.تمديد(A) - يضيف "قائمة إلى قائمة". توفر هذه الميزة الوقت حيث يمكنك إضافة عناصر متعددة في نفس الوقت. لنفترض أن لدينا بالفعل قائمة بالفواكه ، نحتاج إلى إضافتها إلى القائمة الرئيسية.

shoplist.extend (فواكه)

  • إدراج (فهرس ، عنصر) - يُدرج في العنصر بالفهرس المحدد القيمة المحددة قبل الفهرس المحدد.
  • lcount (عنصر) - يظهر عدد مرات تكرار العنصر.
  • قائمة.إزالة(بند) هي الوظيفة المعاكسة قائمة.ألحق (x). يمكن استخدامه لإزالة أي عنصر. إذا لم يكن العنصر المحدد مدرجًا في القائمة ، فسيتم الإبلاغ عن خطأ.
  • فرقعة ([فهرس]) - يزيل العنصر المحدد ويعيده بنفس الطريقة. إذا لم يتم تحديد العنصر ، فسيتم حذف العنصر الأخير من القائمة.
  • فرز ([مفتاح]) - يضع العناصر في القائمة بترتيب تصاعدي ، ولكن يمكنك أيضًا تحديد وظيفة.
  • فهرس (عنصر) - يعرض فهرس العنصر الأول المحدد.
  • يمكنك توسيع القائمة ، أي عكس جميع عناصرها ، باستخدام الطريقة عكس (قائمة). يصبح العنصر الأخير هو الأول ، والعنصر قبل الأخير يصبح الثاني ، وهكذا.
  • يتم إنشاء نسخة من القائمة باستخدام الأمر نسخة (قائمة).
  • نسخة عميقة (قائمة) - نسخ عميق.
  • قم بإزالة جميع عناصر القائمة باستخدام الطريقة لائحة خالية).

تجدر الإشارة إلى أن طرق الإدراج تختلف عن طرق السلسلة من حيث أنها تغير القائمة على الفور ، أي ليست هناك حاجة لإرجاع نتيجة التنفيذ.

>>> l = [1، 2، 3، 5، 7] >>> l.sort () >>> l [1، 2، 3، 5، 7] >>> l = l.sort ()> >> طباعة (ل) بلا

فيما يلي مثال على العمل مع القوائم:

>>> a = [66.25، 333، 333، 1، 1234.5] >>> طباعة (a.count (333) ، a.count (66.25) ، a.count ('x')) 2 1 0 >>> أ- أدخل (2، -1) >>> أ.لحق (333) >>> a [66.25، 333، -1، 333، 1، 1234.5، 333] >>> a.index (333) 1 >> > أ- إزالة (333) >>> أ [66.25، -1، 333، 1، 1234.5، 333] >>> أ- عكس () >>> أ [333 ، 1234.5 ، 1 ، 333 ، -1 ، 66.25 ] >>> a.sort () >>> a [-1 ، 1 ، 66.25 ، 333 ، 333 ، 1234.5]

اترك تعليق