المصفوفة (Array) — هي بنية بيانات تخزن مجموعة من القيم (تسمى عناصر المصفوفة)، ويتم تحديد كل عنصر بواسطة فهرس. يتم تعريفها باستخدام الأقواس المربعة []. على سبيل المثال، العبارة q = [] تعني أن المتغير q يحتوي على مصفوفة فارغة. إذا كانت q = [2, 5, 7, 4, 9]، فإن المصفوفة تحتوي على 5 عناصر — وهذا هو طولها. تبدأ فهارس العناصر، التي تمثل مواقعها في المصفوفة، من 0. لذا، فهرس العنصر "2" هو 0، وفهرس العنصر "4" في مصفوفتنا هو 3.

مثال: array=[1,2,3,4] أو array1=["mother","father","son","daughter"]

مثال على الوصول إلى عنصر مصفوفة: array[1] (يُرجع القيمة 2)

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

مثال: {"SLU":12345,"Name":"Men's t-shirt, white","Size":50,"Price":1000}

مثال على الوصول إلى عنصر قاموس: dictionary["Array"] (يُرجع القيمة 12345)

يمكن أن تحتوي كل من المصفوفات والقواميس على هياكل معقدة أو متداخلة — أي يمكن أن تحتوي على بعضها البعض. على سبيل المثال:

مصفوفة من القواميس: products=[{"SKU":12345,"Name":"Men's t-shirt, white","Size":50,"Price":1000},{"SKU":12346,"Name":"Men's t-shirt, white","Size":52,"Price":1000}]

التعبير s = {} يعني أن المتغير s يحتوي على قاموس لا يحتوي على أي عناصر. يمكننا وضع زوج مفتاح-قيمة فيه، أو حتى عدة أزواج: s = {"key1":"value1", "key2":"value2","key3":"value3"}. كل مفتاح وقيمة محاطان بعلامات اقتباس، ويتم وضع نقطتين بين المفتاح والقيمة، ويتم فصل أزواج المفتاح-القيمة بفواصل.

يمكن أن تكون المصفوفات والقواميس متداخلة. دعنا نلقي نظرة على مثال:

rainbow = [red, orange, yellow, green, light blue, blue, purple] - هذه مصفوفة.

إذا كتبنا

rainbow = {"every":"red","hunter":"orange","wants":" yellow","know":"green","where":"light blue","sits":"blue","pheasant":"purple"}

  • نحصل على قاموس

إذا نظرنا عن كثب إلى قوس قزح، يمكننا أن نرى، على سبيل المثال، أن اللون الأزرق الفاتح أكثر تعقيدًا ويتكون من الفيروزي والأزرق الفاتح والأزرق الداكن. دعنا نكتب: light blue = [turquoise,light blue, dark blue]. الآن دعنا ندمج مصفوفتنا "blue" في القاموس "rainbow":

rainbow = {"first_color":"**red**","**second_color**":"**orange**","**third_color**":"**yellow**","**forth_color**":"**green**","**sixth_color**":"**blue**","**last_color**":"**purple**"}

إذن كيف نحدد عنوان عنصر، على سبيل المثال "turquoise"؟

وفي المصفوفات، يتم العنونة بواسطة الفهرس، لذا عنوان العنصر "turquoise" هو 0.

لخص هذا: ["where"][0] - هو عنوان العنصر "turquoise".

كيفية العمل مع العنونة (JSON)

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

أفضل طريقة لفهم مبدأ العنونة في JSON هي من خلال مثال: {"suggestions": [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]}

لدينا هنا قاموس يحتوي على زوج مفتاح-قيمة واحد suggestions - المفتاح للمصفوفة: [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]

قيمة مفتاح suggestions هي مصفوفة تحتوي على عنصر واحد فقط — قاموس: {"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}} suggestions|0 - هو المفتاح للعنصر الأول (والوحيد) من المصفوفة. {"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}

suggestions|0|value - هو المفتاح للقيمة "Belarusian ruble"

{"suggestions": [{"**value**": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]}

أطول مسار مفتاح في هذا JSON هو: suggestions|0|data|strcode - هو المفتاح لـ AED

{"suggestions": [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "**strcode**": "**AED**", "name": "Dirham", "country": "UAE"}}]}

يتم فصل المفاتيح بواسطة شريط عمودي. إذا كان JSON يحتوي على مصفوفة، يتم الوصول إلى عناصرها بواسطة الفهرس، بدءًا من 0، ويتم كتابتها أيضًا باستخدام شريط عمودي. يبدأ فهرسة المصفوفة من 0.

في العنونة، يتم التعامل مع الأرقام بنفس طريقة التعامل مع السلاسل والعكس صحيح. على سبيل المثال، '6' و 6 يعتبران متساويين.

بالإضافة إلى ردود API، يمكن أيضًا استخدام المصفوفات والقواميس لتخزين البيانات بشكل ملائم.

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

مثال آخر هو عندما تحتاج إلى تخزين عدد النقاط لكل لاعب في لعبة جماعية. يمكنك استخدام قاموس لهذا، حيث تكون المفاتيح هي معرفات المستخدمين والقيم هي نقاطهم.

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

العمل مع المصفوفات

كيفية إنشاء مصفوفة

إنشاء مصفوفة - تعريف مصفوفة

array_name = []

كيفية مسح مصفوفة

مسح مصفوفة هو في الأساس نفس تعريف مصفوفة فارغة:

array_name = []

كيفية الوصول إلى عنصر مصفوفة

الوصف

name[index] - الوصول إلى عنصر مصفوفة بواسطة الفهرس أو القيمة

مثال

دعنا نلقي نظرة على بعض الأمثلة للعمل مع المصفوفات:

مثال على الوصول إلى عنصر مصفوفة بواسطة فهرسه:

مثال على الحصول على آخر عنصر مصفوفة:

مثال كود للنسخ
/*الوصول بواسطة الفهرس*/
arrayI = [1, "2", 3, 4, 5]
k=arrayI[3]
/*الوصول بواسطة الفهرس من مصفوفة متداخلة*/
arrayV = [[1, "2", 4, 5], "2", 3, 4, 5]
v=arrayV[0][1]

/*مثال على الحصول على آخر عنصر*/
array = [1, "2", 3, 4, 5]
/*الحصول على آخر عنصر من المصفوفة*/
last = array[-1]

كيفية استبدال قيمة في مصفوفة

الوصف

name[index] = value - استبدال عنصر مصفوفة بواسطة فهرس معين

مثال

مثال:

لاستبدال قيمة عنصر مصفوفة معين، استخدم الصيغة التالية: array_name[index] = value

الإجابة:

مثال كود للنسخ
array = [1, "2", 3, 4, 5]

/*استبدال في مصفوفة/قاموس*/
array[2] = 888

/*إضافة في قاموس   dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

/*استبدال في مصفوفة/قاموس إلى رقم*/
array[3] = int('888')
dicts['a'] = int('555')

كيفية التحقق مما إذا كان العنصر موجودًا في مصفوفة

الوصف

in_array(mass, value) - للتحقق من وجود عنصر في مصفوفة.

المعلمات: \ ! mass - مصفوفة \ ! value - قيمة للبحث

تُرجع True أو False اعتمادًا على ما إذا تم العثور على القيمة أم لا.

مثال

مثال:

مثال كود للنسخ
s = ["Mike", "Peter", "Helen"] 
q = if(in_array(s, 'Ann'), 'Found', 'Another string')

كيفية معرفة طول المصفوفة

الوصف

arr_len(mass) - لمعرفة طول المصفوفة

المعلمة: \ ! mass - مصفوفة

النتيجة: تُرجع رقمًا - طول المصفوفة.

كن حذرًا عند تمرير المعاملات إلى الدالة! إذا تم استدعاؤها بدون معاملات، فإنها تُرجع 0؛ إذا كان المعامل ليس مصفوفة ولا قاموسًا، فإنها تُرجع -1.

مثال

مثال على الاستخدام:

النتيجة:

مثال كود للنسخ
s = ["Mike", "Peter", "Helen"] 
q = if(arr_len(s) > 5, 'Group is full', 'Join our team!')

كيفية إدراج عنصر في نهاية مصفوفة؟

الوصف

append(mass, element, priznak) - لإدراج عنصر في نهاية مصفوفة.

المعلمات:

! mass - مصفوفة \ ! element - عنصر للإدراج
priznak - علامة تشير إلى ما إذا كانت مصفوفة أم قاموسًا

تُرجع المصفوفة مع القيمة المضافة في النهاية. لتحديث المصفوفة الأصلية، استخدم التعيين: mass = append(mass, element, priznak)

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

مثال

مثال على الاستخدام:

مثال على الإضافة إلى مصفوفة والإزالة منها:

مثال على إنشاء مصفوفة تحتوي على مصفوفات بداخلها:

نتيجة تنفيذ الدالة:

مثال كود للنسخ
s = ["Mike", "Peter", "Helen"]
q = append(s, 'Max')

كيفية إدراج قيمة في موضع معين في مصفوفة

الوصف

insert(mass, index, value, priznak) - لإدراج عنصر في موضع معين في مصفوفة.

المعلمات: \ ! mass - مصفوفة \ ! index - موضع الإدراج \ ! value - قيمة
indicator - مؤشر الإضافة إلى مصفوفة أو قاموس.

النتيجة:
تُرجع مصفوفة مع القيمة المضافة في الموضع المحدد. بمعنى آخر، لإضافة القيمة إلى نفس المصفوفة، استخدم الأمر بالشكل التالي: mass = insert(mass, index, value, indicator)

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

مثال

مثال:

النتيجة:

دعنا نلقي نظرة على مثال أكثر تعقيدًا - إضافة قاموس t إلى مصفوفة s:

في الدالة، أشرنا إلى أننا نريد إضافة قاموس إلى الموضع 1. دعنا نلقي نظرة على النتيجة:

مثال كود للنسخ
s = ["Mike", "Peter", "Helen"]
q = insert(s, 1, 'Max')

كيفية حذف عنصر من مصفوفة

del() | del | remove()

الوصف

حسب الفهرس

del(mass, key) - يزيل عنصرًا من المصفوفة حسب فهرسه.

المعلمات: \ ! mass - اسم المصفوفة؛\ ! key - فهرس القيمة المراد إزالتها

تُرجع مصفوفة جديدة مع إزالة العنصر؛ تبقى المصفوفة الأصلية دون تغيير. للحذف والتحديث في نفس المصفوفة، استخدم الأمر بالشكل التالي:
mass = del(mass, key)

إذا كانت المصفوفة تحتوي على أرقام وتريد إزالة عنصر حسب القيمة، استخدم الدالة remove().

del name['index'] - إزالة قيمة من مصفوفة حسب الفهرس

المعلمات: \ ! name- اسم المصفوفة؛\ ! index- فهرس القيمة المراد إزالتها

حسب القيمة

remove(mass, value) - لحذف قيمة من مصفوفة.

المعلمات: \ ! mass - اسم المصفوفة؛ \ ! value - القيمة المراد إزالتها من المصفوفة

النتيجة:
تُرجع مصفوفة معدلة، تاركة المصفوفة الأصلية دون تغيير. لإزالة عنصر وتحديث نفس المصفوفة، استخدم الأمر بالشكل التالي:
mass = remove(mass, key)

أمثلة

مثال على إزالة عنصر حسب الفهرس:

مثال على إزالة عنصر مصفوفة حسب قيمته:

مثال كود للنسخ
/*إزالة عنصر مصفوفة حسب فهرسه:*/
array = ["1",2, 3, "4"]
del array['1']

array1 = ["1",2, 3, "4"]
array1=del(array1,0)


/*إزالة عنصر مصفوفة حسب قيمته:*/
array = ["1",2, 3, "4"]
array=remove(array, '4') 

array1 = ["1",2, 3, "4"]
array1=remove(array1, 2) 

كيفية الحصول على موضع عنصر في مصفوفة

الوصف

index(mass, value)

المعلمات: \ ! mass - اسم المصفوفة \ ! value - القيمة التي يجب تحديد موضعها.

إذا لم يكن العنصر موجودًا في المصفوفة، سترجع الدالة -1.

أمثلة

مثال على تحديد موضع عنصر في مصفوفة:

دعنا نلقي نظرة فاحصة على النتيجة بالتفصيل:

كما نرى، نظرًا لأن الرقم 5 غير موجود في المصفوفة، فقد أعادت الدالة -1.

مثال كود للنسخ
array = ["1",2, 3, "4"]
search1=index(array,"1")
search2=index(array,5)

كيفية تحويل مصفوفة إلى نص قابل للقراءة

الوصف

massive_to_text(massive, header, numbered,delimiter1,delimiter2)

المعلمات:

! massive – المصفوفة المراد عرضها،
header – عنوان سيظهر في بداية المخرجات
numbered – إذا تم تمرير أي قيمة، سيتم ترقيم عناصر المصفوفة
delimiter1 – الحرف الذي يوضع في نهاية كل سطر عنصر (الافتراضي هو ';')،
delimiter2 – الحرف المستخدم بعد رقم العنصر عند تفعيل الترقيم (الافتراضي هو ')')

أمثلة

مثال بسيط:

نتيجة لذلك، سيتم عرض المصفوفة كقائمة مرقمة:

مثال كود للنسخ
Array1 = [1, 2, 3, "a", "b", "c"] 
text = array_to_text(Array1, 'title', 1) 

كيفية استبعاد مصفوفة من أخرى

الوصف

except_arr(mas1, mas2)

المعلمات:

! mas1 - المصفوفة التي سيتم استبعاد العناصر منها،\ ! mas2 - المصفوفة التي تحتوي على العناصر المراد استبعادها

أمثلة

دعنا نلقي نظرة على المثال:

مثال كود للنسخ
s1 = [1, 2, 3]
s2 = [2, 3]
s3 = except_arr(s1, s2)

كيفية إيجاد تقاطع المصفوفات

الوصف

cross_arr(mas1, mas2)

المعلمات:

! mas1 - المصفوفة المراد البحث فيها\ ! mas2 - المصفوفة التي تحتوي على العناصر المراد البحث عنها

أمثلة

مثال كود للنسخ
s1 = [1, 2, 3]
s2 = [2, 3]
s3 = cross_arr(s1, s2)

mas1 = ["didn't", "except,", "that", "everything", "is", "so", "simple.", "thanks"]
mas2 = ["everything", "thanks"]
mas3 = cross_arr(mas1, mas2)

كيفية دمج المصفوفات

الوصف

لا توجد دالة مدمجة خصيصًا لدمج المصفوفات، ولكن يمكن القيام بذلك بسهولة:

لدمج المصفوفات، قم بإجراء تسلسل نصي، ثم استبدل '][' بفاصلة ','

أمثلة

هذا مثال في حقل الآلة الحاسبة

هذا مثال على عمل البوت

مثال كود للنسخ
a = [1,2,3,4] 
b = [5,6,7] 
sum = a + b 
answer = replace(sum, '][', ',') 

كيفية جمع عناصر مصفوفة

الوصف

sum_array(array)

المعلمات:

array - المصفوفة التي يجب جمع عناصرها

انتباه! تعمل الدالة مع المصفوفات ذات تنسيق محدد.

التنسيقات المقبولة: - [1,2,3,4] أو '[1,2,3,4]'.
إذا كانت المصفوفة تحتوي على أرقام ممثلة كسلاسل نصية، فيجب وضعها بين علامتي اقتباس مزدوجة - على سبيل المثال، [1,2,3,"-4"].
إذا كانت المصفوفة تحتوي على سلاسل نصية أبجدية، سيفشل الحساب.

مثال على الاستخدام غير الصحيح:
mas = [1,2,3,"a"]
result = sum_array(mas)

سيؤدي هذا إلى خطأ: array has unsupported elements

أمثلة

النتيجة:

مثال كود للنسخ
mas = [1,2,3,4] 
result = sum_array(mas) 

كيفية خلط عناصر مصفوفة

الوصف

shuffle_massive(massive)

المعلمات:

massive - المصفوفة التي يجب خلط عناصرها.

أمثلة

نتائج تنفيذ الدالة:

مثال كود للنسخ
Massive1 = [1, 2, 3, "a", "b", "c"]
Massive2 = shuffle_massive(Massive1) 

لفرز المصفوفات والقواميس

sort() | sort_by_value()

الوصف

الفرز في مصفوفة أو قاموس

sort(mass, b) - يفرز مصفوفة حسب القيمة، وقاموسًا حسب المفتاح

المعلمات:

! mass - مصفوفة/قاموس
b - ترتيب الفرز (False – تصاعدي (افتراضي)، True – تنازلي)

فرز القاموس حسب قيمته

sort_by_value(dict, b) - يفرز قاموسًا حسب القيم.

المعلمات:\ ! dict- قاموس
b - ترتيب الفرز (False – تصاعدي (افتراضي)، True – تنازلي)

مثال

مثال على فرز مصفوفة بترتيب تنازلي وقاموس بترتيب تصاعدي:

فرز قاموس حسب القيم:

تحويل مصفوفة/قاموس إلى أزرار

tools_make_button_str_checker() | tools_check_user_input()

الوصف

تحويل مصفوفة/قاموس إلى أزرار

tools_make_button_str_checker(values_list, key, in_line, button_type, checker_with_numbers)

المعلمات:

! values_list - مصفوفة من السلاسل النصية أو القواميس التي سيتم استخدام بياناتها لبناء لوحة مفاتيح أو قائمة مرقمة

key - المفتاح الذي سيتم من خلاله الاختيار من مصفوفة القواميس

in_line - عدد الأزرار في كل صف (الافتراضي: 1)

button_type - نوع الأزرار (الافتراضي: لوحة مفاتيح رد).
القيم الممكنة:
0 - لوحة مفاتيح رد،
1 - أزرار مضمنة (أزرار في النص)

checker_with_numbers - ما إذا كان سيتم إضافة أرقام الأزرار إلى مصفوفة "checker".
القيم الممكنة:
0 - لا تقم بإضافة أرقام،
1 - قم بإضافة أرقام (الافتراضي: 1 – إضافة أرقام)

نتيجة الدالة — قاموس بالشكل:

{"numbered_list":"1. T-shirts\n2. Shorts\n3. Socks\n4. Caps\n","buttons":[{"type":"inline","text":"T-shirts","line":0,"index_in_line":0},{"type":"inline","text":"Shorts","line":0,"index_in_line":1},{"type":"inline","text":"Socks","line":1,"index_in_line":0},{"type":"inline","text":"Caps","line":1,"index_in_line":1}],"checker":"T-shirts;1;Shorts;2;Socks;3;Caps;4;"}

يمكن بعد ذلك إدراج قيم القاموس في الحقول في المنشئ:

الحصول على قيمة قاموس بناءً على اختيار العميل

tools_check_user_input(values_list, user_input, key, return_key)

المعلمات:

! values_list - مصفوفة من السلاسل النصية أو القواميس التي سيتم استخدام بياناتها لبناء لوحة مفاتيح أو قائمة مرقمة\ مثال قاموس: [{"text":"T-shirts","price":100},{"text":"Shorts","price":150},{"text":"Socks","price":20},{"text":"Caps","price":50}]\ ! user_input - القيمة التي أدخلها المستخدم من إحدى القيم في values_list\ مثال قيمة: Caps
key - المفتاح المستخدم للاختيار من مصفوفة القواميس values_list\ مثال مفتاح: text
return_key - القيمة المعادة للمفتاح المحدد من values_list\ مثال قيمة إرجاع: price

مثال

دعنا نحلل استخدام الدالة مع مثال سلة التسوق:

  1. حدد مصفوفة وحولها إلى قائمة مرقمة وأزرار وقائمة بالقيم الممكنة (للمراسلين بدون أزرار) باستخدام الدالة tools_make_button_str_checker().

  1. استخدم الأزرار التي تم الحصول عليها وقيم numbered_list لتمكين اختيار المنتج:

  1. استخدم قائمة القيم الممكنة checker للتحقق من إدخال العميل:

  1. أخيرًا، اعرض سعر المنتج المحدد للعميل. من المناسب القيام بذلك باستخدام الدالة tools_check_user_input()

مثال كود للنسخ
list = [{"text":"T-shirts","price":100},{"text":"Shorts","price":150},{"text":"Socks","price":20},{"text":"Caps","price":50}]
res = tools_make_button_str_checker(list, "text", "2", "1")
numbered_list = res['numbered_list']
buttons = res['buttons']
checker = res['checker']

res_check = tools_check_user_input(list, user_input, 'text', 'price')

اختيار البيانات من مصفوفة

الوصف

**array_slice(array, start_index, end_index)**​

المعاملات:

****!****​ array - مصفوفة \ ****!****​ start_index - بداية الشريحة
end_index - نهاية الشريحة (الافتراضي: حتى النهاية)

مثال

لنحدد مصفوفة فرعية تبدأ من العنصر الأول:

​ ستكون النتيجة ["Shorts", "Socks", "Caps"]​

مثال آخر لتحديد مصفوفة فرعية من العنصر 0 إلى العنصر 2 من المصفوفة:

​ ستكون النتيجة ["T-shirts", "Shorts"]

مثال كود للنسخ
list = ["T-shirts", "Shorts", "Socks", "Caps"] 
res = array_slice(list, 1)

res = array_slice(list, 0, 2)

تفكيك عناصر المصفوفة

الدالة

unpack_list(array, var_name) - هذه الطريقة تتكرر على مصفوفة وتنشئ متغيرًا منفصلاً لكل عنصر في المصفوفة بأسماء مثل var1, var2, var3 وهكذا.​

! array - معامل مطلوب، مصفوفة من العناصر

var_name - معامل اختياري، سلسلة نصية. إذا تم توفيره، يتم استخدامه لتسمية العناصر المفككة. أمثلة:

إذا تم توفير var_name، يتم تشكيل أسماء المتغيرات باستخدام var_name

يجب أن يتبع var_name قواعد تسمية المتغيرات.

مثال

مثال 1:

array1 = ["one", "two", "three"]

ans1 = unpack_list(array1)

النتيجة - متغيرات الصفقة المنشأة:

var1 = 'one'

var2 = 'two'

var3 = 'three'

مثال 2:

array2 = ["one", "two", "three"]

var_name = 'custom'

ans2 = unpack_list(array2, var_name)

النتيجة - متغيرات الصفقة المنشأة:

custom1 = 'one'

custom2 = 'two'

custom3 = 'three'

كيفية إرجاع قائمة بدون عناصر مكررة

الوصف

remove_duplicates(array) - تُرجع قائمة بدون عناصر مكررة.

! array - معامل مطلوب. القائمة الأصلية للعناصر مع التكرارات.

مثال

مثال:

arr = [1, 2, 5, 1, 5, 3]

new_arr = remove_duplicates(arr)

النتيجة - سيتم تعيين القائمة [1, 2, 5, 3] للمتغير new_arr.

كيفية إنشاء قاموس

الوصف

إنشاء قاموس - تعريف قاموس

name_dictionary = {}

كيفية مسح قاموس

الوصف

المسح - ليس أكثر من تعريف قاموس فارغ.

name_dictionary = {}

كيفية الحصول على قيمة القاموس بواسطة المفتاح

الوصف

name[key] - الحصول على عنصر قاموس بواسطة المفتاح

أمثلة

مثال للعمل مع قاموس:

​ في هذه الحالة المحددة، نصل إلى القيمة بواسطة المفتاح "a". لاسترداد قيمة من قاموس باستخدام مفتاح معين، استخدم التنسيق التالي: name_dictionary["key"]

الإجابة:

مثال كود للنسخ
dicts = {"a": "11", "d": "hi"}
/*الحصول من القاموس*/
aa = dicts["a"]

كيفية الحصول على قائمة مفاتيح من قاموس

الوصف

dict_keys_to_array(data) - للحصول على قائمة مفاتيح قاموس البيانات

أمثلة

مثال: الحصول على قائمة بجميع مفاتيح القاموس

**الإجابة:**​

مثال كود للنسخ
v={"A1":"orange","A2":"apricot","A3":"tangerine","A4":"apple","A5":"pear","A6":"kiwi","A7":"banana","A8":"peach"} 
key= dict_keys_to_array(v)

كيفية الحصول على قائمة قيم من قاموس

الوصف

dict_values_to_array(data) - للحصول على قائمة قيم من قاموس

أمثلة

مثال:

الإجابة:

مثال كود للنسخ
v={"A1":"orange","A2":"apricot","A3":"tangerine","A4":"apple","A5":"pear","A6":"kiwi","A7":"banana","A8":"peach"}
value= dict_values_to_array(v)

كيفية الحصول على القيم من قائمة القواميس بواسطة المفتاح المحدد

الوصف

get_values_by_key(data, key) - تسمح لك بالحصول على قيم من قائمة القواميس بواسطة المفتاح المحدد. تُرجع قائمة من القيم.

مثال

مثال: الحصول على قيم من قائمة قواميس بواسطة المفتاح

الإجابة:

مثال كود للنسخ
data = [{"Product": "Product№1", "Price": 1500}, {"Product": "Product№2", "Price": 6000}]
key = "Product"
result = get_values_by_key(data, key)

كيفية استبدال قيمة في قاموس​

الوصف

name['key'] = value - استبدال قيمة عنصر القاموس بواسطة المفتاح المحدد. إذا تم تحديد مفتاح غير موجود، ستتم إضافة عنصر قاموس جديد.

الوصف

مثال:

لاستبدال قيمة عنصر مصفوفة معين، اكتب تعيينًا مثل array_name[index] = value أو dictionary_name[key] = value

الإجابة:​

مثال كود للنسخ
dicts = {"a": "11", "d": "hi"}

/*استبدال في قاموس*/
dicts['d'] = AAAAA

/*إضافة في قاموس   dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

/*استبدال في قاموس برقم*/
dicts['a'] = int('555')

كيفية إضافة قيمة إلى قاموس

الوصف

dictionary_name***['key'] = 'value'** -* إضافة قيمة جديدة إلى القاموس.​

إذا لم يكن المفتاح موجودًا من قبل، ستتم إضافة زوج مفتاح-قيمة جديد؛ وإلا، سيتم استبدال القيمة للمفتاح المحدد.

مثال

هذا مثال للكود في حقل الآلة الحاسبة

الإجابة

مثال كود للنسخ
/*إضافة قيمة جديدة إلى القاموس dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

كيفية التحقق من وجود مفتاح في قاموس

الوصف

exist_key(mass, key) - للتحقق من وجود مفتاح في قاموس.

المعاملات:​

mass - قاموس​

key - المفتاح للبحث

تُرجع True أو False اعتمادًا على ما إذا تم العثور على المفتاح.

مثال

مثال على الاستخدام:

مثال كود للنسخ
s = {"1": 123, "2": 234, "q": {"w": "e"}} 
q = if(exist_key(s, 'q'), 'Found', 'Another line')

كيفية التحقق من موضع مفتاح في قاموس

الوصف

key_index(mass, key) - للتحقق من موضع مفتاح في قاموس.

المعاملات:
mass - قاموس
key - المفتاح للبحث.

يتم حساب الموضع في القاموس من 0. وبالتالي، العنصر الأول هو 0، والعنصر الثاني هو 1، وهكذا.

مثال

مثال على الاستخدام:

النتيجة:

مثال كود للنسخ
s = {"1": 123, "2": 234, "q": {"w": "e"}} 
q = key_index(s, 'q')

كيفية الحصول على عدد العناصر في قاموس

الوصف

arr_len(mass) - لتحديد طول القاموس.​

المعامل:
mass - قاموس

النتيجة: تُرجع رقمًا – طول القاموس.

كن حذرًا عند تمرير معامل إلى الدالة: إذا تم استدعاء الدالة بدون معاملات، فإنها تُرجع 0؛ إذا لم يكن المعامل قائمة أو قاموسًا، فإنها تُرجع -1.

مثال

مثال على الاستخدام:

الإجابة:

كيفية حذف عنصر من قاموس

الوصف

بواسطة الفهرس أو المفتاح

del(mass, key) - لحذف عنصر من قائمة بواسطة الفهرس أو من قاموس بواسطة المفتاح.
يأخذ معاملين: القائمة/القاموس والفهرس/المفتاح للحذف.
يُرجع القاموس أو القائمة المعدلة دون تغيير الكائن الأصلي.

إذا كانت القيم في قائمة أو قاموس أرقامًا، استخدم الدالة remove() لحذف عنصر.

مثال

مثال مع قاموس

النتيجة

مثال مع مصفوفة

النتيجة

مثال كود للنسخ

مثال مع قاموس

s={"1":123, "2":234, "q":{"w":"e"}}

q=del(s,'q')

مثال مع مصفوفة

s=["John", "Ann", "Sophie"]\

q=del(s, 1)

كيفية تحويل قاموس إلى نص قابل للقراءة البشرية

الوصف

**humanize(dict, delimiter, from_i, to_i)**​

المعاملات:

dict - اسم القاموس
delimiter - الفاصل بين الأسطر
from_i - فهرس العنصر لبدء الإخراج منه (0-أساسي)
to_i - فهرس العنصر لإنهاء الإخراج عنده (غير شامل)

مثال

لنلقِ نظرة على المثال:

الإجابة

مثال كود للنسخ
dict = {"[id146467928|Alex]":"6","[id145255525|Маx]":"20"}
r = humanize(dict, ': ')

لفرز القواميس​

sort() | sort_by_value()

الوصف

فرز القاموس

sort(dict, b) - يفرز قائمة حسب القيمة، وقاموسًا حسب المفتاح

المعاملات:

****!****​ dict- قاموس

b - اتجاه الفرز (False – تصاعدي افتراضيًا، True – تنازلي)

فرز القاموس حسب القيمة

sort_by_value(dict, b) - فرز قاموس حسب القيم.

المعاملات:

****!****​ dict- قاموس

b - اتجاه الفرز (False – تصاعدي افتراضيًا، True – تنازلي)

أمثلة

مثال: فرز قائمة بترتيب تنازلي وقاموس بترتيب تصاعدي:

فرز قاموس حسب قيمه:

مثال كود للنسخ

مثال: فرز قائمة بترتيب تنازلي وقاموس بترتيب تصاعدي:

array1=[5,4,0,6,3,0]

array1=sort(array1, True)

dict={"Ann":5, "John":4, "Sophie":0, "Alex":6, "Kate":3, "Harry":0}

dict=sort(dict)

فرز قاموس حسب قيمه:

dict={"Ann":5, "John":4, "Sophie":0, "Alex":6, "Kate":3, "Harry":0}

dict=sort_by_value(dict)