نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

الخاصية grid-template

الخاصية grid-template في CSS هي خاصية مختصرة تستعمل لضبط قيم للخاصيات grid-template-rows و grid-template-columns و grid-template-areas. بطاقة الخاصية القيمة الابتدائية لكل خاصية مختصرة: grid-template-columns: none grid-template-rows: none grid-template-areas: none تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة لكل خاصية مختصرة: grid-template-columns: كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة grid-template-rows: كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة grid-template-areas: كما حُدِّدَت. /* كلمة محجوزة */ grid-template: none; /* grid-template-rows / grid-template-columns */ grid-template: 100px 1fr / 50px 1fr; grid-template: auto 1fr / auto 1fr ...

الخاصية grid-template-areas

الخاصية grid-template-areas في CSS تضبط أسماء مناطق gird (أي grid areas). بطاقة الخاصية القيمة الابتدائية none تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت. /* كلمة محجوزة */ grid-template-areas: none; /* <string> سلاسل نصية */ grid-template-areas: "a b"; grid-template-areas: "a b b" "a c d"; /* القيم العامة */ grid-template-areas: inherit; grid-template-areas: initial; grid-template-areas: unset; هذه المناطق ليست مرتبطةً بأيّ عنصر grid، لكن ...

الخاصية grid-template-columns

الخاصية grid-template-columns في CSS تضبط أسماء وأبعاد مسارات الأعمدة في تخطيط Grid. بطاقة الخاصية القيمة الابتدائية none تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة. /* كلمة محجوزة */ grid-template-columns: none; /* <track-list> */ grid-template-columns: 100px 1fr; grid-template-columns: [linename] 100px; grid-template-columns: [linename1] 100px [linename2 linename3]; grid-template-columns: minmax(100px, 1fr); grid-template-columns: fit-content(40%); grid-template-columns: repeat(3, 200px); /* <auto-track-list> */ grid-template-columns: 200px repeat(auto-fill, 100px) 300px; grid-template-columns: minmax(100px, max-content) ...

الخاصية grid-template-rows

الخاصية grid-template-rows في CSS تضبط أسماء وأبعاد المسارات السطرية في تخطيط Grid. بطاقة الخاصية القيمة الابتدائية none تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة. /* كلمة محجوزة */ grid-template-rows: none; /* <track-list> */ grid-template-rows: 100px 1fr; grid-template-rows: [linename] 100px; grid-template-rows: [linename1] 100px [linename2 linename3]; grid-template-rows: minmax(100px, 1fr); grid-template-rows: fit-content(40%); grid-template-rows: repeat(3, 200px); /* <auto-track-list> */ grid-template-rows: 200px repeat(auto-fill, 100px) 300px; grid-template-rows: minmax(100px, max-content) ...

التابع Template.safe_substitute()‎ في بايثون

هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال. البنية العامة safe_substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما. القيمة المعادة يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء ...

التابع Template.safe_substitute()‎ في بايثون

هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال. البنية العامة safe_substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما. القيمة المعادة يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء ...

سلاسل القوالب في بايثون

تقدّم القوالب طريقة أبسط لإجراء عمليات الاستبدال في السلاسل النصية الموصوفة في PEP 292. حيث يمكن إجراء عمليات الاستبدال باستخدام الرمز $ بدلًا من الرمز %، وباتباع القواعد التالية: يعتبر التسلسل $$ تسلسل تهريب، ويجري استبداله بعلامة $ واحدة. تسمّي الصيغة ‎$identifier معرّفًا يحدّد موضعًا للاستبدال يطابق مفتاح ربط يحمل الاسم "identifier". المعرّفات الصالحة هي تلك التي تتضمّن حروفًا وأرقامًا بترميز ASCII وتكون غير حساسة لحالة الأحرف، وتبدأ بشرطة سفلية أو أحد حروف الترميز ASCII. وينتهي اسم المحرّف عند أوّل ...

التابع Template.substitute()‎ في بايثون

يؤدي هذا التابع عملية الاستبدال بالاعتماد على القالب ويعيد سلسلة نصية جديدة. البنية العامة substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ الأخيرة الأولوية في حال وجود معرّفات متكرّرة بينهما. في حال عدم وجود المعرّفات في المعامل mapping أو عند غياب المعاملات المفتاحية، تطلق اللغة الخطأ KeyError، وإضافة ...

التابع match.expand()‎ في بايثون

يجري هذا التابع عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية. البنية العامة match.expand(template) المعاملات template سلسلة نصية تتضمّن تسلسلات مسبوقة بالخط المائل العكسي تمثّل القالب الذي سيستخدمه التابع لإجراء عمليات الاستبدال. القيمة المعادة يعيد التابع السلسلة النصية الناتجة عن إجراء عمليات عملية استبدال التسلسلات المسبوقة بالخط المائل العكسي بالاعتماد على قالب متمثّلٍ بسلسلة نصية، وبنفس طريقة عمل التابع regex.sub()‎. إذ تُحوّل تسلسلات التهريب مثل ‎\n إلى المحارف المقابلة، وتحوّل الإشارات الخلفية الرقمية مثل (‎\2، ...

الصنف Formatter في بايثون

يتيح صنف السلاسل النصية الداخلي في بايثون إجراء عمليات استبدال معقدة للمتغيرات إلى جانب تنسيق القيم باستخدام التابع str.format()‎ الموصوف في PEP 3103. يتيح الصنف Formatter في الوحدة string إنشاء عمليات تنسيق جديدة وتخصيصها حسب الرغبة وبنفس الأسلوب المتّبع في التابع الداخلي str.format()‎. ويقدّم الصنف Formatter التوابع العامّة التالية: Formatter.format()‎ هذه هو تابع الواجهة البرمجية العام، ويأخذ سلسلة تنسيق نصية وعددًا من المعاملات الموقعية والمفتاحية. ويعدّ تابع تغليف wrapper يستدعي التابع vformat()‎. Formatter.vformat()‎ هذا الدالة هي المسؤولة الحقيقية عن جميع ...

الوحدة string في بايثون

تضمّ وحدة string عددًا من الثوابت والأصناف المفيدة في معالجة السلاسل النصية. وتدعم السلاسل النصية في بايثون مجموعة التوابع الخاصّة بالنوع str إلى جانب التوابع الخاصّة بالوحدة string. تقدّم الوحدة string الصنفين التاليين: الصنف Formatter: يتيح هذا الصنف من خلال توابعه إنشاء عمليات تنسيق السلاسل النصية جديدة وتخصيصها حسب الرغبة وبنفس الأسلوب المتّبع في الدالة الداخلية format()‎. الصنف Template: يقدّم هذا الصنف طريقة أبسط لإجراء عمليات الاستبدال في السلاسل النصية والموصوفة في PEP 292. حيث يمكن إجراء عمليات الاستبدال باستخدام ...

الخاصية grid

الخاصية grid المختصرة في CSS تضبط جميع الخاصيات التي تُحدَّد خصائص الشبكة بوضوح (أي grid-template-rows و grid-template-columns و grid-template-areas)، وجميع الخاصيات التي تُحدِّد خصائص الشبكة ضمنيًا (أي grid-auto-rows و grid-auto-columns و grid-auto-flow)، والخاصيات التي تُضبِط الفراغ بين الأعمدة والأسطر (أي grid-column-gap و grid-row-gap)، وكل ذلك في قاعدة واحدة. بطاقة الخاصية القيمة الابتدائية لكل قيمة مختصرة: grid-template-rows: none grid-template-columns: none grid-template-areas: none grid-auto-rows: auto grid-auto-columns: auto grid-auto-flow: row grid-column-gap: 0 grid-row-gap: 0 تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة لكل قيمة مختصرة: grid-template-rows: كما حُدِّدَت، ...

CSS/Topics/Grid

الخاصية الوصف grid الخاصية grid المختصرة في CSS تضبط جميع الخاصيات التي تُحدَّد خصائص الشبكة بوضوح (أي grid-template-rows و grid-template-columns وgrid-template-areas)، وجميع الخاصيات التي تُحدِّد خصائص الشبكة ضمنيًا (أي grid-auto-rows و grid-auto-columns و grid-auto-flow)، والخاصيات التي تُضبِط الفراغ بين الأعمدة والأسطر (أي grid-column-gap وgrid-row-gap)، وكل ذلك في قاعدة واحدة. grid-area الخاصية grid-area في CSS هي خاصية مختصرة تضبط قيمة الخاصيات grid-row-start و grid-column-start و grid-row-end و grid-column-end، مُحدَّدةً أبعاد عنصر grid وموضعه. grid-auto-columns تضبط أبعاد مسارات الأعمدة المُنشأة ضمنيًا. grid-auto-flow تضبط كيف ستعمل خوارزمية تحديد مواضع عناصر grid التلقائية. grid-auto-rows تضبط أبعاد مسارات الأسطر المُنشأة ضمنيًا. grid-column الخاصية grid-column في CSS هي خاصية مختصرة ...

واجهات الكائنات في PHP

تتيح واجهات الكائنات إنشاء شيفرة تحدّد التوابع التي يجب أن يتضمّنها الصنف دون الحاجة إلى تعريف آلية التحكّم في هذه التوابع. تعرّف الواجهات بنفس طريقة تعريف الأصناف، ولكن باستخدام الكلمة المفتاحية interface بدل الكلمة المفتاحية class ودون تعريف محتوى أيّ تابعٍ في الواجهة. يجب أن تكون جميع التوابع المصرّح عنها في الواجهة من النوع public وهذه هي طبيعة الواجهة. يمكن التصريح عن تابع بانٍ في الواجهة، وهو أمر مفيد في بعض الحالات، كاستخدام التابع من قبل المعامل factories. العامل implements ...

واجهات الكائنات في PHP

تتيح واجهات الكائنات إنشاء شيفرة تحدّد التوابع التي يجب أن يتضمّنها الصنف دون الحاجة إلى تعريف آلية التحكّم في هذه التوابع. تعرّف الواجهات بنفس طريقة تعريف الأصناف، ولكن باستخدام الكلمة المفتاحية interface بدل الكلمة المفتاحية class ودون تعريف محتوى أيّ تابعٍ في الواجهة. يجب أن تكون جميع التوابع المصرّح عنها في الواجهة من النوع public وهذه هي طبيعة الواجهة. يمكن التصريح عن تابع بانٍ في الواجهة، وهو أمر مفيد في بعض الحالات، كاستخدام التابع من قبل المعامل factories. العامل implements ...

الوحدة collections‎ في بايثون

تتضمّن هذه الوحدة أنواع بيانات متخصّصة بالحاويات container وتقدّم بدائل للحاويات الداخلية dict و list و set و tuple. تقدّم هذه الوحدة الكائنات التالية: namedtuple دالة مولِّدة factory function لإنشاء أصناف فرعية من صفٍّ يتضمن حقولًا مسمّاة deque حاوية شبيهة بالقوائم تمتاز بأدائها السريع في إضافة العناصر وحذفها في كلا الطرفين. ChainMap صنف شبيه بالقواميس يستخدم لإنشاء عرض منفرد لعمليات ربط mapping متعددة Counter صنف فرعي من الصنف dict الهدف منه عدّ الكائنات القابلة للتقطيع hashable OrderedDict صنف فرعي من ...

الدالة repeat()‎

الدالة repeat()‎ في CSS تُكرِّر جزءًا من قائمة المسارات (track list)، مما يسمح بتعريف عدد كبير من الأعمدة والأسطر التي لها نمط تكرار معيّن بسهولة. يمكن أن تُستعمَل هذا الدالة مع الخاصية grid-template-columns و grid-template-rows. بطاقة الدالة /* <track-repeat> */ repeat(4, 1fr) repeat(4, [col-start] 250px [col-end]) repeat(4, [col-start] 60% [col-end]) repeat(4, [col-start] 1fr [col-end]) repeat(4, [col-start] min-content [col-end]) repeat(4, [col-start] max-content [col-end]) repeat(4, [col-start] auto [col-end]) repeat(4, [col-start] minmax(100px, 1fr) [col-end]) repeat(4, [col-start] fit-content(200px) [col-end]) repeat(4, 10px [col-start] 30% [col-middle] auto [col-end]) repeat(4, [col-start] min-content [col-middle] max-content [col-end]) /* <auto-repeat> */ repeat(auto-fill, 250px) repeat(auto-fit, ...

كائنات ChainMap‎ في بايثون

يقدّم الصنف Chainmap طريقة سريعة لربط عدد من عمليات الربط mappings ليصبح بالإمكان التعامل معها كوحدة واحدة. وعادة ما تكون هذه الطريقة أسرع من إنشاء قاموس جديد واستدعاء التابع update()‎ مرّات عدة. يمكن استخدام هذا الصنف لمحاكاة النطاقات المتشعّبة وهو مفيد في عملية القولبة templating. البنية العامة class collections.ChainMap(*maps) يجمع الصنف CmainMap عددًا من القواميس أو وسائل الربط الأخرى لإنشاء عرض مفرد قابل للتحديث. في حال تعيين قيمة المعامل maps، فإنّ الصنف يقدّم قاموسًا واحدًا فارغًا، وبهذا ستمتلك السلسلة الجديدة كائن ...

قوالب ملفات التصريحات في TypeScript

هذه ملفّات تصريحاتٍ ستساعدك كبدايةٍ لكتابة ملفّاتك الخاصّة، انظر صفحة هياكل المكتبات للتعرف على الملفّ الذي يجب عليك استخدامه. ‎ module.d.ts ‎ module-class.d.ts ‎ module-function.d.ts global.d.ts ‎module-plugin.d.ts‎ ‎global-plugin.d.ts‎ global-modifying-module.d.ts‎ مصادر صفحة Templates في توثيق TypeScript الرسمي.

تنسيق المخرجات في بايثون

تقدّم بايثون عددًا من الطرائق التي تساعد في تنسيق مخرجات البرامج، فيمكن طباعة البيانات بصيغة سهلة القراءة، أو يمكن كتابة البيانات في ملف لاستخدامه في المستقبل.  استخدمنا في هذا التوثيق طريقتين لكتابة القيم: الأول هي العبارات expression statements والدالة print()‎. (هناك طريقة ثالثة وهي استخدام التابع write()‎ الخاص بالكائنات file، ويعرف ملف المخرجات القياسي بـ sys.stdout).  تظهر الحاجة في كثير من الأحيان إلى التحكم في تنسيق المخرجات وإظهارها بأشكال مختلفة وليس كقيم مفصولة بفراغات وحسب. وهناك طريقتان لتنسيق المخرجات، الأولى ...

تنسيق المخرجات في بايثون

تقدّم بايثون عددًا من الطرائق التي تساعد في تنسيق مخرجات البرامج، فيمكن طباعة البيانات بصيغة سهلة القراءة، أو يمكن كتابة البيانات في ملف لاستخدامه في المستقبل.  استخدمنا في هذا التوثيق طريقتين لكتابة القيم: الأول هي العبارات expression statements والدالة print()‎. (هناك طريقة ثالثة وهي استخدام التابع write()‎ الخاص بالكائنات file، ويعرف ملف المخرجات القياسي بـ sys.stdout).  تظهر الحاجة في كثير من الأحيان إلى التحكم في تنسيق المخرجات وإظهارها بأشكال مختلفة وليس كقيم مفصولة بفراغات وحسب. وهناك طريقتان لتنسيق المخرجات، الأولى ...

الخاصية grid-column-gap

الخاصية grid-column-gap في CSS تُحدِّد المسافة التي تفصل بين الأعمدة في حاوية gird. بطاقة الخاصية القيمة الابتدائية 0 تُطبَّق على حاويات gird. قابلة للوراثة لا قابلة للتحريك نعم القيمة المحسوبة نسبة مئوية أو طول مطلق. /* <length> القيم الطولية */ grid-column-gap: 20px; grid-column-gap: 1em; grid-column-gap: 3vmin; grid-column-gap: 0.5cm; /* <percentage> النسب المئوية */ grid-column-gap: 10%; /* القيم العامة */ grid-column-gap: inherit; grid-column-gap: initial; grid-column-gap: unset; أمثلة مثال عن استخدام grid-column-gap لإضافة فراغ فاصل بين الأعمدة في حاوية grid: <div id="grid"> <div></div> <div></div> <div></div> </div> شيفرة CSS: #grid { ...

الخاصية grid-row-gap

الخاصية grid-row-gap في CSS تُحدِّد المسافة التي تفصل بين الأسطر في حاوية gird. بطاقة الخاصية القيمة الابتدائية 0 تُطبَّق على حاويات gird. قابلة للوراثة لا قابلة للتحريك نعم القيمة المحسوبة نسبة مئوية أو طول مطلق. /* <length> القيم الطولية */ grid-row-gap: 20px; grid-row-gap: 1em; grid-row-gap: 3vmin; grid-row-gap: 0.5cm; /* <percentage> النسب المئوية */ grid-row-gap: 10%; /* القيم العامة */ grid-row-gap: inherit; grid-row-gap: initial; grid-row-gap: unset; أمثلة مثال عن استخدام grid-row-gap لإضافة فراغ فاصل بين الأسطر في حاوية grid: <div id="grid"> <div></div> <div></div> <div></div> </div> شيفرة CSS: #grid { ...

إنشاء وتخصيص مولدات وقوالب ريلز

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

الخاصية grid-column

الخاصية grid-column في CSS هي خاصية مختصرة تضبط قيمة الخاصيتين grid-column-start و grid-column-end التي تُحدِّد أبعاد عنصر grid ومكانه في العمود. بطاقة الخاصية القيمة الابتدائية لكل خاصية مختصرة: grid-column-start: auto grid-column-end: auto تُطبَّق على عناصر grid الموجودة داخل حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة لكل خاصية مختصرة: grid-column-start: كما حُدِّدَت. grid-column-end: كما حُدِّدَت. /* كلمات محجوزة */ grid-column: auto; grid-column: auto / auto; /* <custom-ident> */ grid-column: somegridarea; grid-column: somegridarea / someothergridarea; /* <integer> + <custom-ident> */ grid-column: somegridarea 4; grid-column: 4 somegridarea / 6; /* span + <integer> ...

الخاصية grid-row

الخاصية grid-row في CSS هي خاصية مختصرة تضبط قيمة الخاصيتين grid-row-start و grid-row-end التي تُحدِّد أبعاد عنصر grid ومكانه في السطر. بطاقة الخاصية القيمة الابتدائية لكل خاصية مختصرة: grid-row-start: auto grid-row-end: auto تُطبَّق على عناصر grid الموجودة داخل حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة لكل خاصية مختصرة: grid-row-start: كما حُدِّدَت. grid-row-end: كما حُدِّدَت. /* كلمات محجوزة */ grid-row: auto; grid-row: auto / auto; /* <custom-ident> */ grid-row: somegridarea; grid-row: somegridarea / someothergridarea; /* <integer> + <custom-ident> */ grid-row: somegridarea 4; grid-row: 4 somegridarea / 6; /* span + <integer> ...

تكرار الشيفرات (Duplicate Code)

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

if في بايثون

تقدّم بايثون عبارة if للتحكم المشروط بتدفق الشيفرة، وتأخذ الصيغة التالية: if expression: statement فعلى سبيل المثال: >>> x = int(input("Please enter an integer: ")) Please enter an integer: -16 >>> if x < 0: ...     x = 0 ...     print('Negative changed to zero') Negative changed to zero عبارة elif يمكن استخدام عبارة elif (وهي اختصار لعبارة 'else if' ) عند الحاجة إلى التحقق من شروط إضافية، وكما هو موضح في المثال التالي: >>> x = int(input("Please enter an integer: ")) Please ...

if في بايثون

تقدّم بايثون عبارة if للتحكم المشروط بتدفق الشيفرة، وتأخذ الصيغة التالية: if expression: statement فعلى سبيل المثال: >>> x = int(input("Please enter an integer: ")) Please enter an integer: -16 >>> if x < 0: ...     x = 0 ...     print('Negative changed to zero') Negative changed to zero عبارة elif يمكن استخدام عبارة elif (وهي اختصار لعبارة 'else if' ) عند الحاجة إلى التحقق من شروط إضافية، وكما هو موضح في المثال التالي: >>> x = int(input("Please enter an integer: ")) Please ...

for في بايثون

تختلف عبارة for قليلًا في بايثون عن نظيرتها في لغتي C أو Pascal، فبدلًا من تكرار الحلقة استنادًا إلى عملية حسابية (مثل لغة Pascal) أو منح المستخدم القدرة على تعريف عدد مرات التكرار والشرط الذي يؤدي إلى إيقاف عمل الحلقة (كما في لغة C)، فإنّ عبارة for في بايثون تمرّ على عناصر أي تسلسل (قائمة أو سلسلة نصية) معتمدة في ذلك على ترتيب تلك العناصر في ذلك التسلسل. بنية عبارة for >>> # معرفة أطوال السلاسل النصية: ... words = ['cat', ...

for في بايثون

تختلف عبارة for قليلًا في بايثون عن نظيرتها في لغتي C أو Pascal، فبدلًا من تكرار الحلقة استنادًا إلى عملية حسابية (مثل لغة Pascal) أو منح المستخدم القدرة على تعريف عدد مرات التكرار والشرط الذي يؤدي إلى إيقاف عمل الحلقة (كما في لغة C)، فإنّ عبارة for في بايثون تمرّ على عناصر أي تسلسل (قائمة أو سلسلة نصية) معتمدة في ذلك على ترتيب تلك العناصر في ذلك التسلسل. بنية عبارة for >>> # معرفة أطوال السلاسل النصية: ... words = ['cat', ...

المقارنة بين لغتيّ البرمجة Java و Kotlin

بعض المواضيع في Java ومعالجتها في Kotlin عالجت لغة Kotlin العديد من المشاكل الموجودة في Java وهي: التحكُّم بالمرجعيّات الفارغة (null references) عبر نظام الأنواع لا وجود للأنواع الخامّ (raw types) تُعدُّ المصفوفات في Kotlin ثابتة (invariant) للدوال (functions) في Kotlin أنواع مناسبة وهذا ما يتعارض مع التحويلات SAM في Java التنوّع في موقع الاستخدام (use-site variance) دون الحاجة إلى المحارف البديلة (wildcards) لا وجود للاستثناءات المُتحقَّق منها (checked exceptions) في Kotlin ما تمتاز به Java ولا تدعمه Kotlin الاستثناءات ...

الخاصية grid-area

الخاصية grid-area في CSS هي خاصية مختصرة تضبط قيمة الخاصيات grid-row-start و grid-column-start و grid-row-end و grid-column-end، مُحدَّدةً أبعاد عنصر grid وموضعه. بطاقة الخاصية القيمة الابتدائية لكل خاصية مختصرة: grid-row-start: auto grid-column-start: auto grid-row-end: auto grid-column-end: auto تُطبَّق على عناصر grid الموجودة داخل حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة لكل خاصية مختصرة: grid-row-start: كما حُدِّدَت. grid-column-start: كما حُدِّدَت. grid-row-end: كما حُدِّدَت. grid-column-end: كما حُدِّدَت. /* الكلمات المحجوزة */ grid-area: auto; grid-area: auto / auto; grid-area: auto / auto / auto; grid-area: auto / auto / auto / auto; /* ...

الخاصية grid-auto-columns

الخاصية grid-auto-columns في CSS تضبط أبعاد مسارات الأعمدة المُنشأة ضمنيًا. بطاقة الخاصية القيمة الابتدائية auto تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة. /* كلمات محجوزة */ grid-auto-columns: min-content; grid-auto-columns: max-content; grid-auto-columns: auto; /* <length> */ grid-auto-columns: 100px; grid-auto-columns: 20cm; grid-auto-columns: 50vmax; /* <percentage> */ grid-auto-columns: 10%; grid-auto-columns: 33.3%; /* <flex> */ grid-auto-columns: 0.5fr; grid-auto-columns: 3fr; /* minmax() */ grid-auto-columns: minmax(100px, auto); grid-auto-columns: minmax(max-content, 2fr); grid-auto-columns: minmax(20%, 80vmax); /* fit-content() */ grid-auto-columns: fit-content(400px); grid-auto-columns: fit-content(5cm); grid-auto-columns: fit-content(20%); /* track-size */ grid-auto-columns: min-content max-content auto; grid-auto-columns: 100px 150px 390px; grid-auto-columns: 10% 33.3%; grid-auto-columns: 0.5fr ...

الخاصية grid-auto-rows

الخاصية grid-auto-rows في CSS تضبط أبعاد مسارات الأسطر المُنشأة ضمنيًا. بطاقة الخاصية القيمة الابتدائية auto تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة. /* كلمات محجوزة */ grid-auto-rows: min-content; grid-auto-rows: max-content; grid-auto-rows: auto; /* <length> */ grid-auto-rows: 100px; grid-auto-rows: 20cm; grid-auto-rows: 50vmax; /* <percentage> */ grid-auto-rows: 10%; grid-auto-rows: 33.3%; /* <flex> */ grid-auto-rows: 0.5fr; grid-auto-rows: 3fr; /* minmax() */ grid-auto-rows: minmax(100px, auto); grid-auto-rows: minmax(max-content, 2fr); grid-auto-rows: minmax(20%, 80vmax); /* fit-content() */ grid-auto-rows: fit-content(400px); grid-auto-rows: fit-content(5cm); grid-auto-rows: fit-content(20%); /* track-size */ grid-auto-rows: min-content max-content auto; grid-auto-rows: 100px 150px 390px; grid-auto-rows: 10% 33.3%; grid-auto-rows: 0.5fr ...

ترقية أندرويد في كوردوفا

يوضح هذا الدليل كيفية تعديل مشروعات كوردوفا للترقية انطلاقًا من الإصدارات القديمة من كوردوفا. تُطبَّق معظم هذه الإرشادات على المشاريع التي تم إنشاؤها باستخدام أدوات سطر الأوامر القديمة التي كانت قبل واجهة سطر الأوامر cordova. يمكنك الانتقال إلى توثيق واجهة سطر الأوامر للحصول على معلومات حول كيفية تحديث إصدار واجهة سطر الأوامر. الترقية إلى الإصدار ‎7.X.X أفضل طريقة للترقية إلى الإصدار ‎7.X.X هي إزالة منصة أندرويد من مشروعك، ثم إعادة إضافتها بالإصدار الجديد. مثلًا: cordova platform remove android cordova platform add ...

تحويل التوابع إلى معاملات (Parameterize Method)

المشكلة تؤدي توابع متعددة أعمالًا مماثلة تختلف فقط من حيث قيمها الداخلية أو أرقامها أو عملياتها. الحل تجميع هذه التوابع باستخدام معامل يُمرر القيمة الخاصة الضرورية. مثال قبل إعادة التصميم يؤدي التابعان ()fivePercentRaise و ()tenPercentRaise الغرض ذاته باختلاف النسبة المئوية المراد زيادتها للموظف Employee: يؤدي التابعان أعمالًا مماثلة تختلف فقط من حيث قيمها الداخلية أو أرقامها أو عملياتها. بعد إعادة التصميم تجميع التابعان السابقان في تابع واحد يدعى ()raise مع تمرير النسبة المئوية المتغيرة إليه: يجمع التابعين باستخدام معامل يُمرر ...

سحب التابع لأعلى (Pull Up Method)

المشكلة تحتوي الأصناف الفرعية على توابع تؤدي نفس العمل. الحل جعل التوابع متطابقة ثم نقلها إلى الصنف الأعلى ذي الصلة. مثال قبل إعادة التصميم يحتوي الصنفان الفرعيان Soldier و Tank على التابع ()getHealth الذي يؤدي نفس العمل: تحتوي الأصناف الفرعية على التابع ()getHealth تؤدي نفس العمل. بعد إعادة التصميم نقل التابع ()getHealth إلى الصنف Unit الأب وإزالته من الأصناف الفرعية: نقل التابع ()getHealth إلى الصنف الأعلى. لم إعادة التصميم؟ تنمو الأصناف الفرعية وتتطور بشكل مستقل عن بعضها البعض، مما يتسبب ...

تقرير الوحدات في TypeScript

قراءة هذه الصفحة تتطلّب فهمًا عامًّا للوحدات. انظر توثيق الوحدات للاستزادة. تقريرُ (أو حلُّ) الوحداتِ (Module resolution)، هي العمليّة التي يعتمد عليها المترجم (compiler) لاكتشاف ما يُشير إليه استيرادٌ (import) معيّن. لنفترض مثلًا أنّ لدينا جملة استيرادٍ كما يلي: ‎import { a } from "moduleA"‎‎؛ للتحقّق من أيّ اعتمادٍ على المتغيّر ‎a‎، فإنّ المترجم بحاجةٍ إلى فهم ما يُمثّله المتغيّر بالضبط، وسيتطلّب ذلك التحقق من تعريفه في الوحدة ‎moduleA‎. سيسأل المُترجم كبدايةٍ عن شكل الوحدة ‎moduleA‎، وقد تكون الوحدة مُعرّفةً ...

Python/types

تقدّم هذه الوحدة عددًا من الدوال المساعدة لإنشاء أنواع بيانات جديدة بصورة ديناميكية، إضافة إلى أنّها تعرّف أسماءً لبعض أنواع الكائنات التي يستخدمها مفسّر بايثون المعياري، ولكنّها ليست كائنات داخلية مثل int أو str، إلى جانب أنّ هذه الوحدة تقدم بعض الأصناف والدوال المساعدة الخاصة ببعض الأنواع، والتي لا تعدّ أساسية بما يكفي لتصبح أصنافًا ودوالّ داخلية. إنشاء الأنواع ديناميكيًا تقدّم هذه الوحدة ثلاث دوالّ تساعد في إنشاء أنواع البيانات ديناميكيًا: الدالة types.new_class()‎‎ تنشئ هذه الدالة ديناميكيًا كائن صنف باستخدام ...

Python/PEP

يعبر الاختصار PEP عن العبارة Python Enhancement Propsoal وتعني اقتراح تحسين في بايثون، وهو وثيقة تصميم تقدّم معلومات لمجتمع بايثون، أو تصف ميزة جديدة في بايثون أو عملياتها أو البيئة الخاصة بها. يجب أن يقدم اقتراح التحسين مواصفات تقنية موجزة ووافية للميزة مع شرح للمنطق الخاص بها. المرجع الصفحة المرجعية لاقتراحات التعديل

Python/macpath

أُلغيت هذه الوحدة في النسخة 3.7 وسيتم إزالتها نهائيا في الوحدة 3.8.

Python/array

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

Python/fileinput

تحوي هذه الوحدة على صنف مساعد وتوابع تسمح بتسريع كتابة حلقة للمرور على الدخل المعياري أو على قائمة من الملفات. ( إن كنت تريد قراءة ملف واحد أو الكتابة عليه فيُنصح باستخدام التابع open لهذا الغرض). الاستخدام النموذجي import fileinput for line in fileinput.input(): process(line)

Python/namedtuple

تعطي الصفوف المسمّاة معنى لكل عنصر ضمن الصف، وينتج عن ذلك شيفرة أسهل في القراءة وموثّقة ذاتيًّا. يمكن استخدام الصفوف المسمّاة في أيّ مكان تستخدم فيه الصفوف العادية، وتمتاز بإمكانية الوصول إلى الحقول عن طريق الأسماء بدلًا من فهرس العنصر. البنية العامة تستخدم الدالة namedtuple()‎ لإنشاء الصفوف المسمّاة وصيغتها العامّة هي: namedtuple(typename, field_names, *, verbose=False, rename=False, module=None) تعيد هذه الدالة البانية صنفًا فرعيًا من الصنف tuple يحمل الاسم typename. يُستخدم الصنف الفرعي الجديد في إنشاء كائنات شبيهة بالصفوف تمتلك حقولًا ...

Python/tempfile

11.6. tempfile — توليد الملفات والمجلدات المؤقتة الشيفرة المصدرية تُنشئ هذه الوحدة ملفات ومجلدات مؤقتة، وتعمل على جميع المنصات المدعومة في بايثون، وتقدم الواجهات التالية TemporaryFile و NamedTemporaryFile و TemporaryDirectory و SpooledTemporaryFile  كواجهات عالية المستوى تدعم عملية تنظيف تلقائية ويمكن استخدامها كمدير سياق context manager، كما تقدم الوحدة تابعين mkstemp و mkdtemp منخفضي المستوى يحتاجان إلى التنظيف اليدوي بعد استخدامهما.

الأصناف في بايثون

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

Python/filecmp

تعرف هذه الوحدة توابع لمقارنة الملفات والمجلدات مع العديد من الخيارات للمقايضة بين دقة المقارنة والزمن المستغرق لها، كما يمكن استخدام الوحدة difflib لمقارنة الملفات.

Python/os.path

يُرجى الحذف، أُنشأت خطأً.

while في بايثون

تستخدم عبارة while لتكرار عملية التنفيذ ما دام الشرط المقدّم إلى هذه العبارة صحيحًا، وتأخذ عبارة while الصيغة التالية: while expression: statement مثال: >>> a, b = 0, 1 >>> while b < 10: ...     print(b) ...     a, b = b, a+b ... 1 1 2 3 5 8 تستمر هذه العبارة في تكرار تنفيذ الشيفرة ما دام الشرط صحيحًا True، أما إذا كان نتيجة الشرط خطأً False (قد يحدث ذلك في الدورة الأولى من الحلقة) فستنتقل عملية التنفيذ إلى عبارة else في حال وجودها، وتوقف اللغة ...

عرض (50 السابقة | 50 التالية) (20 | 50 | 100 | 250 | 500).