توبل
المجموعة هي قائمة غير قابلة للتغيير. لا يمكن تعديل المجموعة بأية طريقة بمجرد إنشائها.

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



إنشاء المجموعات طريقة واحدة: مثل القائمة ، ولكن مع أقواس <جدول> <الجسم>

1
2
3 
أ = (1،2،3،4،5) طباعة (اكتب (أ)) نبسب ؛ # class & # 39 ؛ tuple & # 39 ؛ طباعة (أ) نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ # (1، 2، 3، 4، 5)

طريقتان: باستخدام وظيفة tuple () <جدول> <الجسم>
1
2
3
ب = tuple ((1،2،3،4،5)) طباعة (نوع (ب)) نبسب ؛ # & lt ؛ class & # 39 ؛ tuple & # 39 ؛ & GT ؛ طباعة (ب) نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ # (1، 2، 3، 4، 5)


عليك أن تتذكر!
  1. المجموعات هي قائمة ثابتة.
  2. يمكن أن تكون عناصر المجموعة من أنواع مختلفة.
  3. يمكنك إنشاء مجموعة باستخدام وظيفة tuple () أو من خلال سرد العناصر بين قوسين.

ميزات Tuple

1) يمكنك تعيين قيم لمجموعة دون استخدام الأقواس /
على سبيل المثال ، يمكنك إنشاء مجموعة مثل هذا: <جدول> <الجسم>
1
2
3
a = 1،2،3،4،5 & nbsp؛ & nbsp؛ & nbsp؛ print (a [3]) & nbsp؛ & nbsp؛ & nbsp؛ # 4 & nbsp؛ & nbsp؛ يمكن الوصول إلى عنصر من tuple بنفس طريقة عنصر القائمة ، & nbsp؛ نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ # بتحديد فهرس العنصر بين أقواس مربعة .
2) للإعلان عن مجموعة تتضمن عنصرًا واحدًا ، تحتاج إلى استخدام فاصلة لاحقة: <جدول> <الجسم>
1
2
3
4 
a = & # 39؛ a & # 39؛ نبسب ؛ نبسب ؛ ب = & # 39 ؛ ب & # 39 ؛ ، نبسب ؛ print (type (b)) & nbsp ؛ & nbsp ؛ # & lt ؛ class & # 39 ؛ tuple & # 39 ؛ & gt ؛ & nbsp ؛ print (type (a)) & nbsp؛ & nbsp؛ # & lt؛ class & # 39؛ str & # 39؛ & gt؛
3) يمكنك تخصيص قيم عناصر المجموعة للمتغيرات الفردية: <جدول> <الجسم>
1
2
3 
my_tuple = (1، 2، 3، 4، 5) أ ، ب ، ج ، د ، ه = my_tuple طباعة (ج) نبسب ؛ نبسب ؛ # 3
يمكن استخدام الشرطات السفلية _ كمتغيرات غير ضرورية <جدول> <الجسم>
1
2
3 
my_tuple = (1، 2، 3) أ ، _ ، _ = my_tuple طباعة (أ) نبسب ؛ على & nbsp ؛ # 1
 يجب أن يتطابق عدد المتغيرات مع الرقم من عناصر المجموعة! 

4) يمكن أن تحتوي المجموعة على عناصر متداخلة مختلفة. في هذه الحالة ، عند الإشارة إلى العناصر المتداخلة & nbsp ؛ يجب استخدام أقواس مربعة إضافية <جدول> <الجسم>
1
2 
my_tuple = ((& # 39 ؛ a & # 39 ؛، & # 39 ؛ b & # 39 ؛، & # 39 ؛ c & # 39 ؛) ، [1 ، 2] ، ((1 ، & # 39 ؛ a & # 39 ؛ ) ، (& # 39 ؛ ب & # 39 ؛ ، & # 39 ؛ ج & # 39 ؛))) print (my_tuple [2] [1]) # (& # 39 ؛ b & # 39 ؛، & # 39 ؛ c & # 39 ؛)

الإشارة إلى العناصر. متداخلة Tuples
يمكن أن تحتوي المجموعات على مجموعات أخرى كعناصر. & nbsp ؛ يمكن أيضًا استخدام القوائم والسلاسل وما إلى ذلك كعناصر في المجموعة.
يشبه الوصول إلى العناصر الوصول إلى عناصر القائمة ، مع تحديد فهرس العنصر بين قوسين معقوفين. تبدأ الفهرسة من الصفر.
عند الإشارة إلى العناصر المتداخلة ، يجب استخدام أقواس مربعة إضافية.
نبسب ؛ my_tuple = ((& # 39 ؛ a & # 39 ؛، & # 39 ؛ b & # 39 ؛، & # 39 ؛ c & # 39 ؛) ، [1 ، 2] ، ((1 ، & # 39 ؛ a & # 39 ؛ ) ، (& # 39 ؛ ب & # 39 ؛ ، & # 39 ؛ ج & # 39 ؛))) طباعة (my_tuple [2] [1]) & nbsp؛ على & nbsp ؛ # (& # 39 ؛ ب & # 39 ؛، & # 39 ؛ ج & # 39 ؛)

مقارنة المجموعات عند مقارنة المجموعات: & nbsp؛
- تتم مقارنة الأرقام بالقيمة ؛ & nbsp ؛
- السلاسل بترتيب معجمي ؛ & nbsp ؛
- في حالة تساوي العناصر في نفس المناصب ، تتم مقارنة العناصر التالية ؛ & nbsp ؛
- ستحدث مقارنة العناصر حتى المتباينة الأولى ؛ & nbsp ؛
- عند المقارنة ، يجب تحويل العناصر إلى نفس النوع (لا يمكنك مقارنة رقم وسلسلة). & nbsp؛

نبسب ؛

مثال <جدول> <الجسم>
1
2
3
4
5
6
7
8
9
10
أحد عشر
12

أ = 4 ب = 8 C = & # 39 ؛ أ & # 39 ؛، د = & # 39 ؛ ض & # 39 ؛، E = (14 ، & # 39 ؛ الحد الأقصى & # 39 ؛ ، & # 39 ؛ الحد الأدنى & # 39 ؛) F = (14 ، & # 39 ؛ الحد الأقصى & # 39 ؛ ، & # 39 ؛ دقيقة & # 39 ؛) ك = 999 طباعة (A & lt ؛ B) & نبسب ؛ على & nbsp ؛ # صحيح طباعة (C & lt ؛ D) & نبسب ؛ على & nbsp ؛ # صحيح طباعة (E & GT ؛ F) & نبسب ؛ على & nbsp ؛ # صحيح طباعة (K & lt ؛ F) & نبسب ؛ على & nbsp ؛ # خطأ طباعة (C & lt؛ K) & nbsp؛ & nbsp ؛ # TypeError: & # 39 ؛ & lt ؛ & # 39 ؛ غير مدعوم # بين حالات & # 39 ؛ str & # 39 ؛ و & # 39 ؛ int & # 39 ؛

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

نبسب ؛
بنية الشريحة my_tuple [start: stop: step] & nbsp؛ # start، stop and step

سلسلة Tuple

من الممكن ربط المجموعات لإنشاء كائن جديد (تسلسل ، على غرار السلاسل). <جدول> <الجسم>
1
2
3
4 
س = (1،2،3،4) ص = (5،6،7،8) ض = س + ص & نبسب ؛ طباعة (ض) & نبسب ؛ # (1 ، 2 ، 3 ، 4 ، 5 ، 6 ، 7 ، 8)
أثناء عملية الضرب ، يتم تكرار الصف عدة مرات (على غرار ضرب السلاسل). <جدول> <الجسم>
1
2
3 
س = (1،2،3،4) ض = س * 2 طباعة (ض) & nbsp ؛ # (1، 2، 3، 4، 1، 2، 3، 4)



إزالة مجموعة عمليات وأساليب Tuple تشبه عمليات وطرق القائمة. باستثناء تلك التي تغير عناصر المجموعة.
لا يمكن إضافة عنصر مضمن في مجموعة أو إزالته بسبب ثباته. ومع ذلك ، يمكن حذف المجموعة نفسها باستخدام عامل التشغيل del . <جدول> <الجسم>
1
2 
طالب = (2007 ، & # 39 ؛ Ivan & # 39 ؛، & # 39 ؛ Ivanov & # 39 ؛، & # 39 ؛ 9-A & # 39 ؛، خطأ) ديل الطالب

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



مثال على فرز Tuple
يمكنك بسهولة فرز مجموعة باستخدام وظيفة Sorted () . <جدول> <الجسم>
1
2
3
4 
أ = (5 ، 3 ، 2 ، 1 ، 4) طباعة (مرتبة (أ)) نبسب ؛ نبسب ؛ # [1 ، 2 ، 3 ، 4 ، 5] نبسب ؛ a = tuple (Sorted (a)) & nbsp؛ طباعة (أ) نبسب ؛ نبسب ؛ # (1 ، 2 ، 3 ، 4 ، 5) & نبسب ؛
لاحظ أن الطرق مثل append () و extension () و remove () لا تعمل مع tuples و pop () .