بايثون العرب | Python Arab 🇵🇸
7.85K subscribers
191 photos
52 videos
81 files
145 links
...تعلم لغة برمجة بايثون .....


قنواتنا 》》 @Arab_Victory

حسابي على github 》》https://github.com/DrDataYE
.
موقعنا علئ الويب 》》https://cyber1101.com
Download Telegram
وردة ببايثون 🌺

الكود :

import turtle
#DrData
t = turtle.Turtle()
s = turtle.Screen()
s.bgcolor('#262626')
t.pencolor('#7C909C')
t.speed(100)
col =( '#ED7864' , '#6E544F' , '#592F2F' , '#6E383E' )
for n in range(5):
for x in range(8):
t.speed(x+10)
for i in range(2):
t.pensize(2)
t.circle(80+n*20,90)
t.lt(90)
t.lt(45)
t.pencolor(col[n%4])
s.exitonclick()
👍1🔥1
10 طرق لتسريع كود بايثون الخاص بك

1. قائمة الفهم
numbers = [x**2 for x in range(100000) if x % 2 == 0]

numbers = []
for x in range(100000):
if x % 2 == 0:
numbers.append(x**2)

#DrData


2. استخدم الوظائف المضمنة
تتم كتابة العديد من الوظائف المضمنة في Python بلغة C ، مما يجعلها أسرع بكثير من حل Python الخالص.

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

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

5. استفد من Numpy
Numpy هي مكتبة مُحسّنة للغاية تم إنشاؤها باستخدام C. فمن الأسرع دائمًا إلغاء تحميل الرياضيات المعقدة إلى Numpy بدلاً من الاعتماد على مترجم Python.

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

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

8. تجنب المتغيرات العالمية
تعد Python أسرع قليلاً في استرداد المتغيرات المحلية من المتغيرات العامة. من الأفضل ببساطة تجنب المتغيرات العالمية عندما يكون ذلك ممكنًا.

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

10. فكر في هياكل البيانات الخاصة بك
البحث في القاموس أو المجموعة سريع للغاية ، لكن القوائم تستغرق وقتًا يتناسب مع طول القائمة. ومع ذلك ، لا تحافظ المجموعات والقواميس على النظام. إذا كنت تهتم بترتيب بياناتك ، فلا يمكنك الاستفادة من القواميس أو المجموعات
👍4
أسئلة وأجوبة مقابلة DSA

1. ما هو الفرق بين بنية الملف وهيكل التخزين؟
يكمن الاختلاف في منطقة الذاكرة التي يتم الوصول إليها. يشير هيكل التخزين إلى بنية البيانات في ذاكرة نظام الكمبيوتر ،
بينما تمثل بنية الملف بنية التخزين في الذاكرة المساعدة.

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

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

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

5. ما هو ديكو؟
إنها قائمة انتظار ذات نهايات مزدوجة ، أو بنية بيانات ، حيث يمكن إدراج العناصر أو حذفها من كلا الطرفين (الأمامي والخلفي).

6. ما هي العمليات التي يمكن إجراؤها في قوائم الانتظار؟
يضيف enqueue () عنصرًا إلى نهاية قائمة الانتظار
يزيل dequeue () عنصرًا من مقدمة قائمة الانتظار
يتم استخدام init () لتهيئة قائمة الانتظار
اختبارات فارغة لمعرفة ما إذا كانت قائمة الانتظار فارغة أم لا
يتم استخدام الواجهة للحصول على قيمة عنصر البيانات الأول ولكنها لا تزيلها
يستخدم الجزء الخلفي للحصول على العنصر الأخير من قائمة الانتظار.

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

8. كيف يعمل فرز التحديد؟
يعمل فرز التحديد عن طريق الانتقاء المتكرر لأصغر رقم بترتيب تصاعدي من القائمة ووضعه في البداية. تتكرر هذه العملية مع التحرك باتجاه نهاية القائمة أو المصفوفة الفرعية المصنفة.

مسح جميع العناصر والعثور على أصغر. قم بالتبديل فوق الموضع كعنصر أول. كرر فرز التحديد على عناصر N-1 المتبقية. نحن دائمًا نكرر التقدم للأمام (أنا من 0 إلى N-1) ونبادله بأصغر عنصر (دائمًا أنا).

تعقيد الوقت: أفضل حالة O (n2) ؛ أسوأ O (n2)

تعقيد الفضاء: أسوأ O (1)

9. ما هي تطبيقات هيكل بيانات الرسم البياني؟
شبكات النقل حيث يتم تمثيل المحطات كرؤوس ومسارات كأطراف الرسم البياني
الرسوم البيانية للمرافق للطاقة أو الماء ، حيث تكون الرؤوس عبارة عن نقاط اتصال وتحيط الأسلاك أو الأنابيب التي تربطها
الرسوم البيانية للشبكات الاجتماعية لتحديد تدفق المعلومات والنقاط الفعالة (الحواف والرؤوس)
الشبكات العصبية حيث تمثل الرؤوس الخلايا العصبية وتحيط بالمشابك بينها

10. ما هي شجرة AVL؟
شجرة AVL (Adelson و Velskii و Landi) عبارة عن شجرة بحث ثنائية توازن الارتفاع حيث يكون اختلاف ارتفاعات اليسار
والشجرة الفرعية اليمنى لأي عقدة أصغر من أو تساوي واحدًا. هذا يتحكم في ارتفاع شجرة البحث الثنائية من خلال عدم السماح
انها تنحرف. يستخدم هذا عند العمل مع مجموعة كبيرة من البيانات ، مع التقليم المستمر من خلال إدراج البيانات وحذفها.

11. التفريق بين NULL و VOID؟
Null هي قيمة ، في حين أن Void هو معرف نوع بيانات
تشير القيمة الفارغة إلى قيمة فارغة للمتغير ، بينما يشير الفراغ إلى المؤشرات التي ليس لها حجم أولي
Null تعني أنه لم يكن موجودًا على الإطلاق ؛ يعني الفراغ أنه كان موجودًا ولكنه ليس ساري المفعول

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

استمتع بالتعلم 👍👍
#DrData
👍5