لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 07/10/21 في كل الموقع
-
قمت بإضافة express.js من جهة الخادم node.js ولاحظت وجود طريقتين للتضمين ضمن الكود: var express = require('express'); var app = express(); app.listen(3000); والشكل التالي: var express = require('express'); var http = require('http'); var app = express(); var server = http.createServer(app); server.listen(3000); ما الفرق بين هذه الطرق؟ وهل يجب استخدام إحداها أفضل من الأخرى؟2 نقاط
-
لدي قائمة بسيطة كالتالي: x = [0,1,2,4,8,16,32,64,128,512,1024] كما تلاحظ لا يوجد أي عناصر مكررة في القائمة، وقررت أن أقوم بتحويلها إلى set ولكن عندما قمت بذلك من خلال دالة set وجدت أن ترتيب العناصر قد اختلف وكانت النتيجة كالتالي: >>> set(x) {0, 1, 2, 32, 4, 64, 128, 512, 8, 1024, 16} كيف يمكنني تحويل القائمة إلى set بدون أن أفقد ترتيب العناصر في القائمة؟2 نقاط
-
في كثير من الأحيان أستخدم مفسر بايثون Python interpreter لوقت طويل وبعد قليل من الوقت أجد أنه قد امتلأ بكثير من البيانات، وتسألت هل توجد طريقة لعمل clear لمفسر بايثون؟ مثل أمر cls في powershell أو clear في سطر أوامر لينكس. حاولت أن أبحث عن دالة مثل clear أو cls باستخدام كل من help() و dir() لكن لم أجد أي شيء، كما حاولت أن أستخدم الأمر Ctrl + L ولكن يبدو انه لا يعمل في ويندوز. هل توجد طرق أخرى للقيام بهذا الأمر؟2 نقاط
-
2 نقاط
-
اريد معرفة كيف استطيع صنع برنامج مثل الواتساب لكن ليس لإرسال الرسائل النصية والصور فقط اريد اضافة شئ آخر لإرساله1 نقطة
-
1 نقطة
-
لدي تطبيق node.js على خادم ويب VPS بنظام تشغيل ubuntu، ويتم تخديم الموقع من خلال nginx بشكل reserved proxy. والآن أحاول تحويل الاتصال إلى https، فهل يجب إضافة الشهادة على خادم الويب وتعديل إعدادات nginx فقط؟ أم هل هنالك أيضاً تعديلات يجب إجرائها على الكود البرمجي في express.js؟ لأنني لاحظت وجود كل من http و https أثناء تشغيل الخادم: var http = require('http'); var https = require('https'); فهل يجب علي إجراء هذه التعديلات أم يكفي إضافة الشهادة على الخادم وتحويل النطاق إلى https؟1 نقطة
-
أحاول أن أقوم بإرسال طلب من نوع post باستخدام مكتبة requests ولكن يبدو أنه لا يمكنني أن أرسل كود JSON، فقط يمكنني أرسل نصوص باستخدام المدخل data كالتالي: requests.post('https://example.com/post', data="value") كيف يمكنني أن أقوم بإرسال كود JSON مع الطلب السابق؟1 نقطة
-
الفرق الآخر هو في حالة اختيار مخدم بشكل https الخاص بالاتصال الآمن حيث أن express يعيد http.Server object أما في الطريقة الثانية يمكننا بناء المخدم من https: var https = require('https'); var server = https.createServer(app).listen(config.port, function() { console.log('Https App started'); }); الشكل الافتراضي لكليهما: http.createServer(app).listen(80); https.createServer(options, app).listen(443); وإن أردت جعل express يشغل كلاً من http - https يمكن استعمال المنطق التالي: // تضمين مكتبات var fs = require('fs'); var http = require('http'); var https = require('https'); var privateKey = fs.readFileSync('sslcert/server.key', 'utf8'); var certificate = fs.readFileSync('sslcert/server.crt', 'utf8'); // إعادادات https var credentials = {key: privateKey, cert: certificate}; var express = require('express'); var app = express(); // تجهيز المخدم var httpServer = http.createServer(app); var httpsServer = https.createServer(credentials, app); // تشغيل المخدمين httpServer.listen(8080); httpsServer.listen(8443);1 نقطة
-
في الرياضيات يوجد ما يُسمى ب sets و ordered sets (osets): و ال sets هي حاوية من عناصر فريدة و غير مرتبة، أي أن ال sets هي unordered data structure لذلك فهي لا تحفظ الترتيب. (ال sets موجودة ضمن python) أما ال oset فهي حاوية من عناصر فريدة و مرتبة (ال osets غير موجودة في python) و لكن يمكننا محاكاة وظيفة ال osets باستخدام ال dictionary keys و هي خاصية في python 3.7 فما فوق. x = [ 0, 1, 2, 4, 8, 16, 32, 64, 128, 512, 1024 ] oset = dict.fromkeys(x) list(oset) # output: [ 0, 1, 2, 4, 8, 16, 32, 64, 128, 512, 1024 ] أو يمكنك استخادم الدالة sorted كما يلي: x = [ 0, 1, 2, 4, 8, 16, 32, 64, 128, 512, 1024 ] oset = sorted(set(x), key=x.index)1 نقطة
-
1 نقطة
-
يمكنك استخدام متصفح ثاني غير الذي تستخدمه ومن ثم محاولة تشغيل فيديوهات الدورة مرة أخرى , أيضا يمكنك فتح تذكرة دعم فني من هنا , عن طريق اختيار أكاديمية حسوب ومن ثم سيعملون على حل مشكلتك باسرع وقت.1 نقطة
-
بعدما تقوم بإنشاء جدول teachers يجب عليك القيام ببعض الخطوات و هي كالتالي : إنشاء مودل خاص بهذا الجدول وليكن باسم مثلاً Teacher.php ويمكن إنشاء المودل عن طريق الأمر التالي php artisan make:model Teacher ومن ثم تقوم بفتح هذا الملف و إضافة له guard الذي سيكون خاص به عن طريق إضافة السطر التالي إلى الملف protected $guard = "teacher"; مع إضافة مصفوفة fillable$ للحقول الذي تنتمي لهذا الجدول protected $fillable = ['name', 'email', 'password']; ثم تقوم بإنشاء guard جديد لهذا الجدول وليكن اسمه teacher عن طريق الدخول إلى الملف التالي config\auth.php وبداخل مصفوفة guards نضيف guard الجديد 'teacher' => [ 'driver' => 'session', 'provider' => 'teachers', ], ثم في نفس الملف في مصفوفة providers نقوم بإضافة provider جديد 'teachers' => [ 'driver' => 'eloquent', 'model' => App\Teacher::class, ], ثم يمكنك إنشاء متحكم جديد وليكن مثلاً باسم TeacherController.php عن طريق الأمر التالي php artisan make:controller Auth\TeacherController نقوم بفتح هذا الملف و من ثم إضافة عملية تسجيل الدخول إليه عن طريق الكود التالي ,بحيث نقوم بإضافة guard الذي نود أن يكون مسؤول عن عملية تسجيل الدخول Auth::guard('teacher')->attempt(['email' => $request->email, 'password' => $request->password]);1 نقطة
-
في مسائل التصنيف المتعدد يجب أن تكون حذراً مع اختيار دالة الخسارة، والمشكلة هنا هي في اختيارك لدالة الخسارة، فعندما تكون بيانات y_true مرمزة بترميز One-Hot يجب أن نختار categorical_crossentropy أما إذا كانت بيانات y_true تتبع ترميزاً عادياً (أي كل صنف تم تمثيله بعدد صحيح 1,2,3...,class_n) فهنا يجب أن نختار دالة الخسارة sparse_categorical_crossentropy.1 نقطة
-
بما أنه لديك 3 أصناف فيجب أن تقوم بتحويل ال y_train و y_test إلى الترميز الفئوي أي One-Hot أي: from keras.utils import to_categorical y_test = to_categorical(y_test, 4) y_train = to_categorical(y_train, 4) وأيضاً يجب أن تتحقق من أبعاد المدخلات لديك في طبقة LSTM حيث أن الدخل المتوقع لهذه الطبقة يجب أن يكون: (batch_size, timesteps, input_dim) # 3D tensor1 نقطة
-
لفهم decorators مع المُدخلات انظر للمثال الآتي @decorator def foo(*args, **kwargs): pass يترجم إلى التالي foo = decorator(foo) لذلك إذا كان للdecorator مُدخلات @decorator_with_args(arg) def foo(*args, **kwargs): pass يترجم إلى الآتي foo = decorator_with_args(arg)(foo) decorator_with_args هي دالة تقبل مُدخلات مخصصة وتقوم بإرجاع decorator الفعلي (الذي سيتم تطبيقه على دالة decorator). حيلة بسيطة لتسهيل استخدام decorator from functools import partial # إنشاء # decorator # مزيف def _pseudo_decor(fun, argument): def ret_fun(*args, **kwargs): # اعمل أي شيء هنا ، على سبيل المثال print ("decorator arg is %s" % str(argument)) return fun(*args, **kwargs) return ret_fun real_decorator = partial(_pseudo_decor, argument=arg) # decorator # الحقيقي @real_decorator def foo(*args, **kwargs): pass1 نقطة
-
حسب ما فهمت أنك تريد إنشاء decorator نمرر له arguments ويمكننا عمل ذلك من خلال إنشاء دالة تقبل ال arguments وننشأ دالة أخرى بداخلها تقبل دالة وترجع دالة أخرى أو (بمعنى آخر يعتبر ال decorator ) ثم بداخلها ننشاً الدالة wrapper لذلك سيصبح الكود مشابه للتالي def decorator_maker(argument): def decorator(function): # decorator هنا يعتبر هذا هو ال def wrapper(*args, **kwargs): some_stuff() function_with_argument(argument) result = function(*args, **kwargs) return result return wrapper return decorator #argument يقبل ال decorator الأن نرجع1 نقطة
-
بالطبع يمكنك استخدام '{:,}'.format(n) كما في التعليقات السابقة ولكن هناك صيغة أخرى لدالة format وهي كالتالي value = 1000000 print (format (value, ',d')) # كالتالي f ب d استبدل ال float إذا كان الرقم value = 1000000.30 print (format (value, ',2f')) #2f رقمين فقط بعد العلامة يمكنك القراءة أكثر عن الدالة format من موسوعة حسوب1 نقطة
-
في حالة تريد إستدعاء دالة في عدة سطور يمكنك إستخدام الأقواس على الشكل التالي: a = some_function( 1 + 2 + 3 - 4 ) أما إذا كنت تريد كتابة سطر برمجي عادي فيمكنك إستخدام الأقواس: a = 1 \ - 2 \ + 3 \ - 4 # االنتيجة 31 نقطة
-
إبتداءا من الإصدار 2.7 يمكنك إستعمال الدالة format بالشكل التالي: my_number = 12678940 my_string = '{:0,.2f}'.format(my_number) # النتيجة : # 12,678,9401 نقطة
-
يمكنك القيام بذلك من خلال التابع format في المكتبة locale كالتالي: import locale locale.format("%d", 123456789 , grouping=True)# '123,456,789' أو باستخدام التعابير المنطقية من مكتبة regex: import re re.sub("(\d)(?=(\d{3})+(?!\d))", r"\1,", "%d" % 123456789) # '123,456,789' أوكما أشار الأستاذ سمير في إجابته: x=123456789 '{:0,.2f}'.format(x) # '123,456,789.00' يمكنك أيضاً القيام بذلك بشكل يدوي من خلال التابع التالي: def sp(x): l = [] g = '%d' % x while g and g[-1].isdigit(): l.append(g[-3:]) g = g[:-3] return g + ','.join(reversed(l)) sp(123456789) # '123,456,789'1 نقطة
-
يُمكنك الوصول إلى ما تريد ببساطة بإستخدام: n = 123456789 print('{:,}'.format(n)) # من أجل إصدار أكبر من 2.7 print(f'{n:,}') # من أجل إصدار أكبر من 3.61 نقطة
-
يُمكنك كتابة أسطرك البرمجية و فصل الأسطر بإستخدام الأقواس بدون أية مشاكل مثلاً: x = (1 + 2 + 3 + 4 + 5) print(x) # 15 أو يُمكنك فصل الخط بشكل صريح بإستخدام علامة \ في حالتك: x = 1 + 2 + 3 + \ 4 + 5 print(x) # 15 إن كنت ستستخدم علامة \ في نهاية السطر يجب أن تكون الأخيرة و ليس بعدها مسافات فارغة او تابات فهذا سيُعطي خطأ: SyntaxError: unexpected character after line continuation character1 نقطة
-
هي دالة خسارة (تكلفة) وتستخدم لنماذج التوقع، وهو يمثل متوسط مجموع الفروق بين القيم الحقيقية والمتوقعة بالقيمة المطلقة. loss = abs(y_true - y_pred) يعد MAE مفيدًا في حالة تلف بيانات التدريب بسبب القيم المتطرفة (أي أننا نتلقى بشكل خاطئ قيمًا سلبية / إيجابية ضخمة بشكل غير واقعي في بيئة التدريب لدينا ، ولكن لانتلقاها في بيئة الاختبار). بشكل عام لا أحبذ استخدامه كدالة تكلفة لأن الدوال من الشكل |x| أي دوال القيمة المطلقة يكون لها شكل مشابه تماماً لحرف V وبالتالي فإن قيمة المشتقة في أي نقطة ستكون كبيرة وهذا أمر غير مناسب، ويمكن إصلاح هذه المشكلة لكن لاداعي لإضاعة الوقت عليها، حيث يمكنك استخدام MSE فهي دالة ممتازة مع مهام التوقع. إن أفضل ايستخدام لها بالنسبة لي هو استخدامها كمعيار (مقياس) لأداء نماذج التوقع. في المثال التالي سأقوم باستخدامها كدالة خسارة وكمعيار: # تحميل الداتا from keras.datasets import boston_housing import keras (train_data, train_targets), (test_data, test_targets) = boston_housing.load_data() # توحيد البيانات mean = train_data.mean(axis=0) train_data -= mean std = train_data.std(axis=0) train_data /= std test_data -= mean test_data /= std from keras import models from keras import layers # بناء النموذج def build_model(): model = models.Sequential() model.add(layers.Dense(64, activation='relu', input_shape=(train_data.shape[1],))) model.add(layers.Dense(64, activation='relu')) model.add(layers.Dense(1)) model.compile(optimizer='rmsprop', loss=keras.losses., metrics=['mae']) #بالشكل التالي compile هنا استخدمناها كدالة تكلفة وكمعيار عن طريق تمريره إلى الدالة model.compile(optimizer='rmsprop', loss='mae', metrics=['mae']) return model # تدريب النموذج model = build_model() model.fit(train_data, train_targets,epochs=8, batch_size=64)1 نقطة
-
اعتقد أنك تريد معرفة كيفية استدعاء الدوال الموجودة في الصف الابن والدوال الموجودة في الصف الاب من خلال الصف الابن؟ أليس كذلك؟ يمكنك القيام بذلك بشكل مباشر كالتالي: # تعريف الصف الأب class Person: def __init__(self,name,age): self.name=name self.age=age def get_age(self): # تابع يرد عمر الشخص return self.age # تعريف الصف الابن الذي يمثل طالب class Student(Person): def __init__(self,ID,name,age): self.ID=ID Person.__init__(self,name, age) def get_ID_and_name(self): return (str(self.ID)+" "+self.name) # تابع يرد رقم واسم الطالب # استدعاء الدوال الموجودة في الصف الابن stu = Student(55,'Ali',24) print(stu.get_ID_and_name()) # استدعاء الدوال الموجودة في الصف الاب من الصف الابن print(stu.get_age()) # ملاحظة : # نقوم باستدعاء باني الصف الاب داخل باني الصف الابن لكي نرث الخصائص الموجودة ضمن الدالة __init__ وبدون ذلك لن نكون قادرين على الوصول لل name و ال age أي لن تتم وراثتهما.1 نقطة
-
اعتقد أنك تقصد كيفية إنشاء قائمة من الكائنات. # تعريف صف class hsoub: def __init__(self, name, ID): self.name = name self.ID = ID list = [] # إنشاء قائمة # إضافة كائنات إلى الصف list.append( hsoub('Ali', 9) ) list.append( hsoub('Ahmad', 6) ) list.append( hsoub('Mohameed', 8) ) # طباعة for object in list: print( object.name, object.ID ) هل تريد شيئاً إضافياً؟1 نقطة
-
dic1={'team1':5, 'lose1':39} dic2={'team2':3, 'lose2':40} def combine(f1, f2): dic = f1.copy() #dic ننشئ نسخة من القاموس الأول ونسميها dic.update(f2) # نضيف لهذا القاموس مفاتيح وقيم القاموس الثاني return dic combine(dic1, dic2) ''' في حال كانت إحدى المفاتيح في القاموس الأول موجودة في الثاني فسيتم استبدالها بمفاتيح الثاني ''' ويمكن أن تجرب: dic = dict(list(dic1.items()) + list(dic2.items())) حيث items هي تابع يرد المفاتيح والقيم في أول قاموس وتضعهم على شكل list من ال tuble ثم تدمجهما مع الثانية وتحولهما في النهاية إلى قاموس في النسخ الحديثة من بايثون يمكنك أن تفعل هذا ببساطة : dic = {**dic1, **dic2}1 نقطة
-
# + لدمج قائمتين نستخدم المعامل # مثلاً list1=[5,5,8] list2=[5,99,8] list=list1+list21 نقطة
-
import re # regex استيراد المكتبة txt = input() # إدخال النص result = re.findall("056\d{7}", txt) # أي أول 3 محارف يجب أن يكونوا056 وبعدها 7 أرقام # عرض النتائج if result: for word in result: print(word) else: print("No ID!") الرمز d\ يدل على وجود رقم الرمز {7} يدل على أن المحرف الموجود قبلها يجب أن يتكرر 7 مرات وفي حالتنا (d\ أي يجب أن يتواجد 7 أرقام) الدالة (pattern,string)findall تبحث في النص الذي نمرره له مكان الباراميتر string لترى ما إذا كان يتطابق أو فيه جزء يتطابق مع التعبير النمطي الذي نمرره لها مكان الباراميتر pattern. في حال تم إيجاد جزء أو أكثر في النص يتطابق مع التعبير النمطي, ترجع list كل عنصر فيه يمثل الجزء الذي يتطابق مع التعبير النمطي. في حال لم يتم إيجاد أي تطابق, ترجع list فارغ. # تعدييييييل: الرمز ^ يختبر فقط بداية النص أي سيختبر مطابقة ال pattern مع أول كلمة في ال string لذلك لايصلح لاستخدامه في هذه المهمة وبشكل مشابه أيضاً المحرف $.1 نقطة
-
import java.util.Vector; //vector استيراد الصف public class ourvector { public static void main(String[] args) { Vector vec = new Vector(); // تعريف غرض /* له عدة بواني vector الصف Vector() الباني الافتراضي، في هذه الحالة كلما امتلأ الشعاع يتم زيادة حجمه بمقدار واحد Vector(int size) باني بوسيط واحد يعبر عن حجم الشعاع وأيضاً يقوم بنفس العمل عندما يمتلئ Vector(int size,int inc) (الخانات التي ستحجو في الذاكرة)باني بوسيطين بحيث الباني الثاني يعبر عن عدد العناصر التي ستضاف كلما امتلأ */ vec.add(12); // لإضافة عنصر إلى الشعاع vec.add(82); vec.add(9);// يمكنك أيضاًإنشاء شعاع وتمريره لهذه الدالة وبالتالي سيضيف كل قيم الشعاع الممرر إلى الشعاع الأساسي System.out.println(vec.size()); // لطباعة عدد عناصر الشعاع for(int i=0; i<vec.size(); j++) { // لطباعة عناصر الشعاع System.out.println("vec[" +j+ "]= " +vec.get(j)); } vec.remove(1); // لحذف عنصر محدد حيث نقوم بتمرير موقعه vec.clear(); // لحذف عناصر الشعاع } } // استعرضت لك التوابع الأساسية، وهناك الكثير الكثير من التوابع الأخرى1 نقطة
-
import pandas as pd dic = {'column1':[17, 3, 4], 'column2':[66, 77, 66], 'column3':[66, 77, 5]} df = pd.DataFrame(dic) # لإعادة تسمية الأعمدة df1=df.rename(columns={"c1": "A", "c2": "B"}) print(df1,end='\n\n') # لإعادة تسمية الأسطر df2=df.rename(index={0: "x", 1: "y", 2: "z"}) print(df2)1 نقطة
-
يحتوي الموقع على الكثير من المواد التعليميه المجانيه مثل الكتب و المقالات و الدروس في مختلف المجالات بالنسبه للدورات فهي مدفوعة1 نقطة