-
المساهمات
4847 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
11
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
أجوبة بواسطة عبدالباسط ابراهيم
-
-
لا توجد دالة خاصة بتنفيذ ما تريده إنما يمكنك تنقيذ ذلك من خلال بعض الدوال
و إذا كنت تريد استخدام ال loop يمكنك استخدام الحل التالي
def find_nearest(array, value): n = [abs(i-value) for i in array] idx = n.index(min(n)) return array[idx]
-
إذا كان ال endpoint او ال url تم معالجته لحذف جميع ال items نعم يمكنك تنفيذ المطلوب من خلال الأمر التالي
axios.delete('https://url/resource/deleteAll')
أو يمكنك استخدام postبدون مشكلة
axios.post('https://url/resource/deleteAll')
-
يمكنك استخدام الدالة nonzero كالتالي
>>> t = array([1, 1, 1, 2, 2, 3, 8, 3, 8, 8]) >>> nonzero(t == 8) #لاحظ الشرط الموجود هنا (array([6, 8, 9]),)#للرقم 8 indexes ستجد هنا وجود جميع ال >>> nonzero(t == 8)[0][0] #index للوصول لأول 6
كما يمكنك استخدام حل بسيط مثل تحويل المصفوفة ل list ثم التحقق من العنصر
l = [1,2,3,4,5] # Python list a = numpy.array(l) # NumPy إنشاء مصفوفة i = a.tolist().index(2) #ثم البحث عن الرقم 2 list تحويل المصفوفة ل print i
- 1
-
توجد العديد من الطرق التي يمكنك من خلالها تنفيذ المطلوب مثل الدوال في التعليقات السابقة أو يمكنك من خلال
-
الدالة numpy.unique كالتالي
a = numpy.array([0, 3, 0, 1, 0, 1, 2, 1, 0, 0, 0, 0, 1, 3, 4]) unique, counts = numpy.unique(a, return_counts=True) dict(zip(unique, counts)) #يحتوي على العنصر وعدد مرات التكرار dict لإنشاء # {0: 7, 1: 4, 2: 1, 3: 2, 4: 1}
-
أو يمكنك استخدام الدالة collections.Counter
import collections, numpy #collections لا تنسى استدعاء ال a = numpy.array([0, 3, 0, 1, 0, 1, 2, 1, 0, 0, 0, 0, 1, 3, 4]) collections.Counter(a) # Counter({0: 7, 1: 4, 3: 2, 2: 1, 4: 1})
- 1
-
الدالة numpy.unique كالتالي
-
يمكنك استخدام savetxt وستعمل بشكل سليم ولكن إذا كان هناك بعض المصفوفات بالنمط int32 ربما لن يتم حفظ المصفوفة في الملف بشكل صحيح والنمط السابق بل ربما يتم تغيير النمط ولن تكون قابلة للقراءة لذلك نحتاج لاستخدام المعامل fmt كالتالي
np.savetxt('values.csv', narr, fmt="%d", delimiter=",") #integer تعني أن يكون من نوع %d لاحظ ال
وإذا كانت المصفوفة كبيرة نوعاً ما يمكنك استخدام الصيغة gz وهي تجعل الملف مضغوط عن طريق تغيير صيغة الملف فقط كالتالي
#بدلاً من np.savetxt('values.csv', narr, fmt="%d", delimiter=",") #استخدم np.savetxt('values.gz', narr, fmt="%d", delimiter=",")
- 1
-
كما ترى أنه يمكنك من خلال set_printoptions تغيير إعدادات الطباعة لذلك ستبقى كذلك دائماً ولكن إذا كنت تريد طباعة مصفوفة في مكان واحد مثلاً أي لا تريد تغيير الإعدادات وجعلها دائمة تريدها مؤقتة يمكنك استخدام ال context manager بواسطة with كالتالي
with numpy.printoptions(threshold=numpy.inf): #with لاحظ استخدام print(arr)
كما يمكنك استخدام الطريقة التالية
arr = numpy.arange(10000).reshape(250,40) #المصفوفة المطلوب طباعتها for row in arr: print row
- 1
-
بتاريخ 28 دقائق مضت قال معاذ باحسن:
لم يعمل؟
تأكد من أن ال media في العرض الأقل من 767 لها القيمة flex حيث إن لم تكن كذلك مثل block لن تعمل لذلك حتى نتأكد من ذلك قم بتنسيقها كالتالي
section.features .feature .media { display: flex; flex-wrap: wrap;/* حتى تنزل العناصر تحت بعضها */ }
وإن لم تعمل قم بطرح هذا السؤال في الدرس الخاص به في الدورة
-
يعتمد ذلك على الكود الموجود عندك في ال html وال css حيث توجد عدة طرق مثل إذا كنت تستخدم ال flexbox يمكنك استخدام ال order كالتالي
-
ستبقى ال media تأخذ التنسيق flex لذلك قم بحذف التنسيق في السطر 448 ثم قم بإضافة التنسيق لجعل العناصر تنزل تحت بعضها من خلال ال flex-basis مثل
section.features .feature .media .media-body { flex-basis: 100%; }
-
بعد ذلك تقوم بتحديد ال order لل media-body كالتالي
section.features .feature .media .media-body { order: 2; }
-
ستبقى ال media تأخذ التنسيق flex لذلك قم بحذف التنسيق في السطر 448 ثم قم بإضافة التنسيق لجعل العناصر تنزل تحت بعضها من خلال ال flex-basis مثل
-
يمكنك التواصل مع مركز المساعدة من هنا حتى تستطيع معرفة إذا كان يمكنك استبدال دورة مكان أخرى وأعتقد أنه يمكنك ذلك ولمعرفة الشروط المطلوبة لذلك
-
يحدث ذلك بسبب أن ال ul عنصر block لذلك يأخذ المساحة كاملة فلا تنفع معه الخاصية
text-align: center لذلك الحل سيكون كالتالي
سيكون لدينا ul
<ul> <li>some text</li> <li>some text</li> <li>some text</li> <li>some text</li> </ul>
-
استخدام ال position
ul{ position: absolute; top: 50%; left: 50%; transform : translate(-50%, -50%) }
-
استخدام ال flexbox وأنا أفضل هذا الحل
ul{ display: flex; align-items: center; justify-content: center; height: 100vh; flex-direction: column; }
عناصر ال li ستكون أسفل بعضها لذلك يمكنك التغيير في التنسيق حسب ما تريد
قم بقراءة هذه المقالة عن ال flexbox حيث يوفر لك العديد من المميزات التي تحتاجها
- 1
-
استخدام ال position
-
حتى تستطيع إضافة ال cookies يجب عليك أن يكون الطلب أو ال request مرفق بالخاصية withCredentials بالقيمة true ويمكنك تنفيذ ذلك سواء ب
- jQuery
xhrFields: {withCredentials: true}
-
الدالة fetch
credentials: 'include'
-
Axios
axios.get('some api url', {withCredentials: true});
يمكنك من خلال إعدادات axios وضع ال with credentials ل true بدلاً من وضعها لكل طلب كالتالي
axios.defaults.withCredentials = true
-
بتاريخ 4 دقائق مضت قال Omar Montage:
بماذا تنصحني اذا كنت مطور واجهات مواقع وأعلم أساسيات كل من html, css , javascript
وهل يوجد react فقط و react js وماذا يجب أن أتعلم منهم كي أتعلم react native
إذا كنت مطور واجهات مواقع فالأفضل لك والأسهل تعلم ال react native
وال react و react js نفس الشئ ويجب عليك تعلمه بشكل جيد حتى تستطيع العمل ب react native
- 1
-
يعتبر التقنيتين cross platform أي تستطيع بناء تطبيق ويعمل على عدة منصات من خلال كود واحد فقط
وتحتاج لتعلم react native ل
- فالأساس يجب عليك تعلم react
- وأيضاً ستحتاج ل html و css وبعض الأدوات التي ستحتاجها عند تطوير التطبيقات
وبالنسبة ل flutter ستحتاج لتعلم لغة البرمجة Dart
ولمعرفة المميزات لكل تقنية قم بقراءة الإجابات على هذا السؤال
أما بالنسبة للمطلوب أكثر في الوطن العربي فكلاهما مطلوبان ربما يكون الطلب على flutter أكثر ولكن لكلهما يوجد فرص عمل كثيرة ويمكنك فتح مواقع التوظيف أو منصات العمل الحر وبالحث عن الوظائف الموجودة لكل تقنية
-
أولاً هناك نوعين من قواعد البيانات
- قواعد بيانات Relational databases
- قواعد بيانات non-Relational databases
ولكل نوع مميزات مختلفة وتحتاج لاستخدام قاعدة البيانات التي تخدم مشروعك من خلال معرفة مميزات وسلبيات كل نوع فمثلاً قواعد البيانات الغير علاقية تتمدد بسهولة عند زيادة البيانات وسهلة التعامل وتوفر لك العديد من الدوال التي تسهل من التعديل على البيانات ويمكنك قراءة المزيد من هذه المقالة
ثانياً لا تختلف قاعدة البيانات سواء كنت تستخدمها لتطوير التطبيقات أو المواقع حيث يمكنك تطوير API ليصبح كود ال backend واحد سواء للموقع أو التطبيق
ثالثاً تعتبر ال mysql نظام إدارة بيانات أو برنامج يستخدم قواعد البيانات Relational databases ويعتبر من أفضل قواعد البيانات الموجودة حالياً ومن أكثرهم استخداماً لذلك قم بتعلمها بدون مشاكل
-
يمكنك استخدام المعاملات المنطقية التي توفرها numpy وفي حالتك تريد تنفيذ عدة شروط فيمكنك استخدام المعامل numpy.logical_and ليصبح الكود كالتالي
np.where(np.logical_and(np.greater_equal(dists,r),np.greater_equal(dists,r + dr)))
لاحظ أننا استخدمنا المعامل greater_equal
يمكننا قراءة المزيد من المعلومات حول المعاملات المنطقية من هنا
- 1
-
يمكنك أيضاً بالإضافة للحل السابق استخدام ال transpose بحيث يتم قلب المصفوفة وبعدها يمكنك الوصول للعمود الذي تريده من خلال الصف كالتالي
array([[0, 1], [2, 3]]) np.transpose(x) array([[0, 2], [1, 3]]) #لاحظ عناصر المصفوفة تم تبديل الصف مع العمود
ومن خلال التالي يمكنك تنفيذ ما تريده
arr.T[0]
سيكون الناتج كالتالي
array([1, 3, 5])
-
هذه التحذيرات تظهر بسبب وجود أعمدة بأنماط متعددة مما يستهلك الكثير من الموارد لنحديد الأنماط وكما وضح وائل أنه يمكنك تفادي هذه التحذيرات من خلال low_memory=False أو تحديد نمط إفتراضي ولكن ذلك لا يحسن استهلاك الموارد
لذلك الأفضل هو تفادي هذه التحذيرات والعمل بدون مشاكل ويمكنك عمل ذلك من خلال
#Dtype تجاهل الأخطاء الخاصة بال warnings.filterwarnings('ignore', message="^Columns.*")
ويمكنك أيضاً ال converters لتحويل نمط الأعمدة ولكن هذا الحل ربما يبطئ البرنامج في حالة الملفات الكبيرة
-
يعتمد تنفيذ ذلك على الموقع حيث إذا كنت ستقوم بمعالجة بعض المهام التي ستحتاج لل php فالأفضل استخدامها ويمكنك أيضاً استخدام ال javascript
من خلال ال php
ستحتاج ل form كالتالي
<form action="index.php" method="post" id="form1"> <input type="text" id="message" value=""> <br> <button type="submit" form="form1" name="submit" >Generate Text</button> </form>
سيتم التوجيه لصفحة index.php سواء هي الصفحة الحالية أم لا لذلك يمكنك تنفيذ الدوال التي تريدها في صفحة index.php
<?php if (isset($_POST['form'])) { #قم بوضع الكود الذي تريده هنا حيث سيتم تنفيذه عند الضغط على الزر } ?>
-
بتاريخ الآن قال أحمد ابراهيم عبد الله:
هل تقصد كارت الشاشة ؟
وان لم يكن هو فكيف اصل له واعرف حجمه ؟
نعم أقصد كارت الشاشة
-
اعتقد أن هذه المواصفات جيدة كفاية لتشغيل، نظام التشغيل hackintosh حيث يعتبر
- المعالج جيد ولكنه جيل قديم نوعاً ما
- مساحة الرام كافية جداً
ويفضل أن يكون المعالج الرسومي جيد حتى لا تواجه أي مشاكل
وتعتبر المواصفات المطلوبة لهذا النظام ليست بالكبيرة ولكن إذا كنت تعمل جيداً على نظام التشغيل windows فلن تواجه أي مشاكل في استخدام hackintosh
- 1
-
من الواضح أن
git add.
لا تضيف أي ملفات جديدة والملفات المعدلة حالياً هو مجلد dist وبما أنه لا يتم إضافته فالغالب أنه موجود في ملف gitignore
- لذلك قم بفتح الملف gitignore ثم التأكد من عدم وجود اسم dist في الملف gitignore وإذا كان موجوداً قم بحذفه
- ثم بعد ذلك أعد الخطوات السابقة بداية من
git add.
-
يمكنك استخدام الطريقة التي اقترحها المدرب @Sam Ahw وهي استخدام agent ولكن بطريقة أكثر إيجازاً وهي كالتلي
request({ url: url, agentOptions: { rejectUnauthorized: false } }, function (err, resp, body) { // ... });
-
هل نسخة ال php هى ال thread safe ؟ تأكد من ذلك
إذا كانت كذلك يمكنك تجربة الحل التالي
- قم بفتح الملف C:/laragon/etc/apache2/mod_php.conf
-
ثم استبدل ال الجزء التالي من الملف
LoadModule php8_module
ب
LoadModule php_module
- 1
-
يمكنك تنفيذ المطلوب من خلال الكود التالي
-
الجزء الخاص بزر الإنسدال
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> </button>
تأكد من وجود الكلاسات والخصائص مثل data-target و data-toggle
-
يجب عليك إحتواء الجزء الخاص بالروابط داخل الكلاس collapse navbar-collapse كالتالي
<div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav mr-auto"> <li class="nav-item active"> <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> </li> <li class="nav-item"> <a class="nav-link" href="#">Link</a> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Dropdown </a> <div class="dropdown-menu" aria-labelledby="navbarDropdown"> <a class="dropdown-item" href="#">Action</a> <a class="dropdown-item" href="#">Another action</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="#">Something else here</a> </div> </li> <li class="nav-item"> <a class="nav-link disabled" href="#">Disabled</a> </li> </ul> </div>
-
ويتم وضع الكود الخاص بال button والعنصر بالمحدد collapse navbar-collapse داخل العنصر التالي
<nav class="navbar navbar-expand-lg navbar-light bg-light"> ... </nav>
بالطبع قد تحتاج لتغيير بعض الخصائص أو الكلاسات يمكنك من خلال قراءة المزيد من المعلومات من الموقع الرسمي ل bootstrap
لاحظ أن الكود السابق خاص بالإصدار الرابع إذا أردت العمل بالإصدار الخامس ربما تجد بعض الإختلافات البسيطة في اسم كلاس مثلاً
-
الجزء الخاص بزر الإنسدال
"هل تستطيع استخدام بطاقة فيزا أقل من 18 سنة"
في أسئلة العمل الحر
نشر
كما قال وائل في التعليق السابق فإنه يختلف الأمر من بنك إلى آخر ومن دولة لدولة لذلك يجب عليك معرفة الشروط الموجودة في بلدك وبالطبع يختلف على حسب البطاقة هناك عدة انواع منها
والبطاقة التي يمكنك التقدم لها تحت عمر ال 18 هي ال prepaid card فقط
الشروط والمعلومات السابقة في مصر ربما تختلف من دولة لأخرى