جدول المحتويات
- إعداد البيئة
- إعداد البيئة المحلية
- كيف تحصل على بايثون
- كيفية تثبيت بايثون
- تثبيت Windows
- تثبيت يونكس / لينكس
- تركيب MAC
- إعداد مسار لبايثون
- تحديد المسار لنظام التشغيل Unix / Linux
- تحديد المسار لنظام التشغيل Windows
- متغيرات بيئة بايثون
- تشغيل بايثون
- النحو الأساسي
- معرفات بايثون
- بيان بايثون
- المسافات البادئة في بايثون
- تعليقات في بايثون
- الحصول على المدخلات
- عرض الإخراج
- أنواع المتغيرات
- تعيين القيم للمتغيرات
- أنواع بيانات بايثون
- سلاسل
- مجموعات
- القوائم
- أعداد
- عوامل التشغيل الأساسية
- مهمة تشغيل
- عامل بت
- عامل منطقي
- عامل حسابي
- عامل المقارنة
- مشغل الهوية
- مشغل العضوية
- صناعة القرار
- إذا البيان
- إذا كان غير ذلك
- متداخلة إذا
- إذا- elif- آخر- سلم
- الاختزال إذا البيان
- بيان الاختزال if-else
- الحلقات
- حائط اللوب
- لحلقة
- حلقات متداخلة
- بيانات التحكم في الحلقة
- تواصل البيان
- بيان كسر
- تمرير البيان
- أعداد
- رقم نوع التحويل
- وظائف العدد العشوائي
- الدوال المثلثية
- وظائف رياضية
- سلاسل
- خلق سلسلة
- عوامل السلسلة الخاصة
- عوامل تنسيق السلسلة
- شخصيات الهروب
- طرق السلسلة المضمنة
- مجموعات
- الوصول إلى القيم في Tuples
- تحديث المجموعات
- معاملات Tuple الأساسية
- بنيت في وظائف Tuple
- الفهرسة والتقطيع
- حذف tuple
- القوائم
- الوصول إلى القيم في القوائم
- تحديث القوائم
- عوامل تشغيل القائمة الأساسية
- وظائف وأساليب القائمة المضمنة
- الفهرسة والتقطيع
- حذف عنصر القوائم
- قاموس
- إنشاء القاموس
- إضافة عناصر في القاموس
- إزالة العناصر من القاموس
- طرق قاموس بايثون
- التاريخ و الوقت
- الوقت Tuple
- وحدة الوقت
- وحدة التقويم
- المهام
- كيفية تحديد وظيفة
- استدعاء وظيفة
- تمر بالإشارة
- تمرير بالقيمة
- الحجج الوظيفية
- حجج متغيرة الطول
- الحجج المطلوبة
- الوسائط الافتراضية
- وسيطات الكلمات الرئيسية
- وظائف مجهولة
- الوحدات
- بيان الاستيراد
- بيان من الاستيراد
- من بيان الاستيراد *
- تحديد الوحدات
- وظائف السكان المحليين () والكرة الأرضية ()
- مساحات الأسماء وتحديد النطاق
- دالة دير ()
- وظيفة إعادة التحميل ()
- ملفات I / O
- فتح ملف
- سمات كائن الملف
- إغلاق ملف
- مع البيان
- طريقة الكتابة
- طريقة القراءة
- طريقة إعادة التسمية ()
- طريقة الإزالة ()
- موضع الملف
- استثناءات
- ما هو الاستثناء؟
- التعامل مع استثناء
- رفع الاستثناء
- قائمة الاستثناءات القياسية
- استثناءات يحددها المستخدم
- التأكيدات في بايثون
- الفئات والكائنات
- برمجة CGI
- تصفح الويب
- رأس HTTP
- متغيرات البيئة CGI
- طريقة GET
- طريقة البريد
- استخدام ملفات تعريف الارتباط في CGI
- كيف يعمل؟
- الوصول إلى قاعدة بيانات MySQL
- إنشاء جدول قاعدة البيانات
- إدراج العملية
- قراءة العملية
- عملية التحديث
- حذف العملية
- أداء المعاملات
- تنفيذ العملية
- عملية ROLLBACK
- فصل قاعدة البيانات
- معالجة الأخطاء
- الشبكات
- ما هي المقابس؟
- وحدة المقبس
- وحدات الإنترنت بيثون
- إرسال البريد الإلكتروني
- إرسال بريد إلكتروني بتنسيق HTML باستخدام لغة البرمجة Python
- إرسال المرفقات كبريد إلكتروني
- برمجة تعدد الخيوط
- بدء موضوع جديد
- وحدة الخيوط
- مزامنة المواضيع
- قائمة انتظار الأولوية متعددة مؤشرات الترابط
- معالجة XML
- ما هو XML؟
- معماريات محلل XML وواجهات برمجة التطبيقات
- تحليل XML مع SAX APIs
- طريقة make_parser
- طريقة التحليل
- طريقة parseString
- برمجة واجهة المستخدم الرسومية
- الحاجيات Tkinter
- إدارة الهندسة
- مقالات مقترحة
الفئات والكائنات
Python هي لغة موجهة للكائنات منذ وجودها ولهذا السبب ، أصبح استخدام الفئات والعناصر وإنشاءها أكثر سهولة. سيساعدك هذا الفصل في أن تصبح خبيرًا في استخدام دعم البرمجة الشيئية في Python.
إذا لم يكن لديك ما يكفي من المعرفة حول البرمجة الموجهة للكائنات ، فهذا شيء بسيط لتبدأ به.
- يتكون الفصل من سلسلة وثائق ، يتم الوصول إليها عبر ClassName .__ doc__.
- يتكون class_suite من عبارات المكون التي تحدد أعضاء الفئة وخصائص البيانات والوظائف.
- getattr (obj، name [، افتراضي]) - يتم استخدامه للوصول إلى سمة الكائن.
- hasattr (obj، name) - يتم استخدامه للتحقق مما إذا كانت السمة موجودة أم لا.
- setattr (كائن ، اسم ، قيمة) - يتم استخدامه لتعيين سمة. إذا كانت السمة غير موجودة ، فسيتم إنشاؤها.
- delattr (obj، name) −يتم استخدامه لحذف سمة.
تكوين الطبقات
يقوم الفصل بإنشاء تعريف فئة جديد. يتبع اسم الفصل فئة الكلمة الأساسية متبوعة بنقطتين.
بناء الجملة
class ClassName: 'Optional class documentation string.' class_suite

كائنات الفئة
الكائن هو مثيل للفئة. الفصل يشبه المخطط بينما هو نسخة من الفصل بقيم فعلية.

انتاج

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

انتاج

الوراثة الطبقية
يمكنك أيضًا إنشاء فصل دراسي عن طريق اشتقاقه من فصل دراسي سابق بذكر الفئة الأصلية بين قوسين بعد اسم الفصل الجديد.
يمكن للفئة الفرعية أن ترث سمات صنفها الأصلي ، ويمكنك استخدام الميزات كما لو كانت محددة في الفصل الفرعي. يمكن للفئة الفرعية أيضًا تجاوز الطرق وأعضاء البيانات من الأصل.
بناء الجملة
class SubClassName (Firstparentclass[, Secondparentclass, ...]): 'Optional class documentation string' class_suite
طرق التجاوز
يمكنك تجاوز طرق فصل الوالدين. يرجع سبب تجاوز طرق الوالدين إلى أنك قد ترغب في الحصول على وظائف فريدة أو مختلفة في الفئة الفرعية الخاصة بك. فيما يلي بعض طرق التحميل الزائد الأساسية.
نعم / لا | طريقة | وصف |
واحد | __إعادة __ (ذاتي) | تمثيل سلسلة قابلة للتقييم |
اثنين | __del __ (ذاتي) | المدمر ، يحذف الكائن |
3 | __cmp__ (النفس ، x) | مقارنة الكائن |
4 | __init__ (self [، args…]) | المُنشئ (مع أي وسيطات اختيارية) |
5 | __str __ (ذاتي) | تمثيل سلسلة قابلة للطباعة |
التعبيرات العادية
التعبير العادي هو تسلسل فريد من الأحرف يساعدك في العثور على مجموعات من السلاسل أو مطابقتها ، باستخدام صيغة خاصة مثبتة في نمط. تستخدم التعبيرات العادية على نطاق واسع في عالم UNIX.
توفر وحدة Python دعمًا كاملاً للتعبيرات العادية المشابهة لـ Perl في Python. تثير الوحدة الاستثناء.
وظيفة المطابقة
يحاول مطابقة نمط RE مع السلسلة ذات العلامات الاختيارية.
بناء الجملة
re.match(pattern, string, flags=0)
نعم / لا | معامل | وصف |
واحد | الأعلام | تحدد أعلامًا مختلفة باستخدام أحادي المعامل OR (|). |
اثنين | نمط | إنه تعبير عادي يجب مطابقته. |
3 | سلسلة | إنها السلسلة التي يتم البحث عنها لمطابقة النمط الموجود في بداية السلسلة. |
وظيفة البحث
إنه يبحث عن التواجد الأول لنمط RE داخل السلسلة ذات العلامات الاختيارية.
بناء الجملة
re.search(pattern, string, flags=0)
نعم / لا | معامل | وصف |
واحد | الأعلام | تحدد أعلامًا مختلفة باستخدام أحادي المعامل OR (|). |
اثنين | نمط | إنه تعبير عادي يجب مطابقته. |
3 | سلسلة | إنها السلسلة التي يتم البحث عنها لمطابقة النمط الموجود في بداية السلسلة. |
معدِّلات التعبير العادي
نعم / لا | معامل | وصف |
واحد | إعادة م | يجعل $ يطابق نهاية السطر ويجعل ^ يطابق بداية أي سطر. |
اثنين | إعادة | يفسر الكلمات وفقًا للإعدادات المحلية الحالية. يؤثر التفسير على المجموعة الأبجدية بالإضافة إلى سلوك حدود الكلمات. |
3 | re.U | يفسر الحروف وفقًا لمجموعة أحرف Unicode. تؤثر العلامة على سلوك w ، W ، b ، B. |
4 | إعادة X | يسمح بتركيب لطيف للتعبير العادي. يتجاهل المسافات البيضاء ويتعامل مع علامة # التي لم يتم تجاوزها كعلامة تعليق. |
5 | إعادة | تجعل النقطة تتطابق مع أي حرف ، بما في ذلك السطر الجديد. |
6 | إعادة | ينفذ مطابقة غير حساسة لحالة الأحرف. |
أنماط التعبير العادي
نعم / لا | نمط | وصف |
واحد | . | يتطابق مع الحرف الفردي باستثناء السطر الجديد. |
اثنين | أ | ب | يطابق إما أ أو ب. |
3 | [...] | يتطابق مع الحرف الفردي بين قوسين. |
4 | [^…] | يتطابق مع حرف واحد ليس بين قوسين |
5 | $ | يطابق نهاية السطر. |
6 | ^ | يطابق بداية السطر. |
7 | إعادة* | يتطابق مع 0 أو أكثر من مرات حدوث التعبير السابق. |
8 | إعادة + | إنه يطابق تكرارًا واحدًا أو أكثر للتعبير السابق. |
9 | إعادة؟ | يتطابق مع حدوث 0 أو 1 للتعبير السابق. |
10 | إعادة {ن} | يتطابق تمامًا مع عدد n من تكرارات التعبير السابق. |
أحد عشر | إعادة {ن ، م} | إنها تطابق على الأقل تكرارات n و m للتعبير السابق. |
12 | إعادة {ن ،} | يتطابق مع عدد n أو أكثر من تكرارات التعبير السابق. |
13 | (إعادة) | يقوم بتجميع التعبيرات العادية ويتذكر النص المتطابق. |
14 | (؟ imx) | يقوم بالتبديل مؤقتًا بين خيارات i أو m أو x داخل تعبير عادي. |
خمسة عشر | (؟ imx: re) | يقوم بالتبديل مؤقتًا بين خيارات i أو m أو x داخل الأقواس. |
16 | ؟: إعادة) | يقوم بتجميع التعبيرات العادية دون تذكر النص المتطابق. |
17 | (؟ -imx) | يقوم مؤقتًا بتبديل خيارات i أو m أو x داخل تعبير عادي. |
18 | (؟ -imx: re) | يقوم مؤقتًا بتبديل خيارات i أو m أو x داخل الأقواس. |
19 | (؟ #…) | تعليق. |
عشرين | (؟ = إعادة) | يحدد الموقع باستخدام نمط. ليس لديها نطاق. |
واحد وعشرين | (؟! إعادة) | يحدد الموقع باستخدام نمط النفي. ليس لديها نطاق. |
22 | (؟> إعادة) | يطابق النمط المستقل دون التراجع. |
23 | في | يتطابق مع أحرف الكلمات. |
24 | في | يتطابق مع أحرف ليست كلمة. |
25 | س | يتطابق مع عدم وجود مسافة بيضاء. |
26 | س | يطابق المسافة البيضاء. |
27 | د | يتطابق مع غير الأرقام. |
28 | د | يتطابق مع الأرقام. يعادل [0-9]. |
29 | 10 | يطابق التعبير الفرعي nth المجمعة إذا كان يطابق بالفعل. وإلا فإنه يشير إلى التمثيل الثماني لرمز الحرف. |
30 | ل | يطابق بداية السلسلة. |
31 | مع | يطابق نهاية السلسلة. في حالة وجود أي سطر جديد ، فإنه يتطابق قبل السطر الجديد مباشرةً. |
32 | مع | يطابق نهاية السلسلة. |
33 | ز | إنها تطابق النقطة التي انتهت فيها المباراة الأخيرة. |
3. 4 | n ، t ، إلخ. | إنها تتطابق مع الأسطر الجديدة ، وعلامات الإرجاع ، وعلامات التبويب ، وما إلى ذلك. |
35 | ب | يطابق حدود nonword. |
36 | 1… 9 | يتطابق مع التعبير الفرعي المجمع n. |
37 | ب | يطابق مسافة للخلف (0x08) عندما تكون داخل الأقواس. |
فئات الأحرف
نعم / لا | مثال | وصف |
واحد | [aeiou] | تتطابق مع أي حرف متحرك صغير |
اثنين | [0-9] | يطابق أي رقم ؛ مثل [0123456789] |
3 | [ص] يثون | إنها تتطابق مع بايثون أو بيثون |
4 | [a-z] | يتطابق مع أي حرف ASCII صغير |
5 | فرك [أنتم] | إنها تتطابق مع الياقوت أو الأحمر |
6 | [^ aeiou] | يتطابق مع أي شيء بخلاف حرف العلة الصغير |
7 | [^ 0-9] | يطابق أي شيء بخلاف الرقم |
8 | [a-zA-Z0-9] | يتطابق مع أي مما سبق |
9 | [أ-ي] | يتطابق مع أي حرف ASCII كبير |
10 | . | يتطابق مع الحرف الفردي باستثناء السطر الجديد. |
أحد عشر | في | يتطابق مع أحرف الكلمات. |
12 | في | يتطابق مع أحرف ليست كلمة. |
13 | س | يتطابق مع عدم وجود مسافة بيضاء. |
14 | س | يطابق المسافة البيضاء. |
خمسة عشر | د | يتطابق مع غير الأرقام. |
16 | د | يتطابق مع الأرقام. يعادل [0-9]. |
حالات التكرار
نعم / لا | مثال | وصف |
واحد | روبي + | يطابق rub plus 1 أو أكثر ys |
اثنين | روبي * | إنها تطابق rub بالإضافة إلى 0 أو أكثر ys |
3 | روبي؟ | إنها تطابق rub أو ruby: y اختيارية |
4 | d {3} | يطابق بالضبط 3 أرقام |
5 | d {3،} | يتطابق مع 3 أرقام أو أكثر |
6 | د {3،5} | يتطابق مع 3 أو 4 أو 5 أرقام |
المراسي
نعم / لا | مثال | وصف |
واحد | Python Z | إنها تطابق Python في نهاية السلسلة. |
اثنين | بايثون $ | إنها تطابق Python في نهاية سلسلة أو سطر. |
3 | ^ بيثون | إنها تطابق Python في بداية سلسلة أو سطر داخلي. |
4 | أبيثون | إنها تطابق Python في بداية السلسلة. |
5 | بايثون (؟ =!) | إنها تتطابق مع Python إذا تبعتها علامة تعجب. |
6 | بايثون (؟ !!) | إنها تطابق Python ، إذا لم تتبعها علامة تعجب. |
7 | ب بايثون ب | إنه يطابق بايثون عند حدود الكلمة. |