Hasan Dayoub

الأعضاء
  • المساهمات

    33
  • تاريخ الانضمام

  • تاريخ آخر زيارة

السُّمعة بالموقع

8 Neutral

3 متابعين

  1. يوجد عدة طرق لذلك: a[start:stop] # 1-من البداية المحددة الى النهاية a[start:] # من البداية المحددة وحتى النهاية a[:stop] # من البداية و حتى النهاية المحددة ناقص واحد a[:] # نسخ كامل المصفوفة a[start:stop:step] # من البداية المحددة الى النهاية المحددة بخطوة محددة a[-1] # آخر عنصر من المصفوفة a[-2:] # آخر عنصرين من المصفوفة a[:-2] # جميع العناصر ما عدا آخر عنصرين a[::-1] # جميع عناصر المصفوفة بترتيب معاكس a[1::-1] # اول عنصرين بترتيب معاكس a[:-3:-1] # آخر عنسرين بترتيب معاكس a[-3::-1] # جميع العناصر ما عدا آخر عنصرين بترتيب معاكس
  2. نعم يمكن ذلك. بإمكانك استخدام التابع التالي لتحقيق ذلك: def merge_two_dicts(x, y): z = x.copy() # نبدأ مع مفاتيح x و قيمها z.update(y) # نقوم بتحديث قيم مفاتيح Y return z ثم نقوم باستدعاء التابع السبق: z = merge_two_dicts(x, y)
  3. loc : تعمل فقط مع الدليل (index) iloc : تمعل مع الموقع (position) مثال: نقوم بإنشاء اطار البيانات التالي: df = pd.DataFrame({'age':[30, 2, 12, 4, 32, 33, 69], 'color':['blue', 'green', 'red', 'white', 'gray', 'black', 'red'], 'food':['Steak', 'Lamb', 'Mango', 'Apple', 'Cheese', 'Melon', 'Beans'], 'height':[165, 70, 120, 80, 180, 172, 150], 'score':[4.6, 8.3, 9.0, 3.3, 1.8, 9.5, 2.2], 'state':['NY', 'TX', 'FL', 'AL', 'AK', 'TX', 'TX'] }, index=['Jane', 'Nick', 'Aaron', 'Penelope', 'Dean', 'Christina', 'Cornelia']) يمكن استخدام loc للحصول على سطر بيانات واحد: df.loc['Penelope'] و النتيجة: age 4 color white food Apple height 80 score 3.3 state AL Name: Penelope, dtype: object أما في حال أردنا اختيار سطر بحسب رقم السطر، نستخدم iloc: df.iloc[4] و النتيجة: age 32 color gray food Cheese height 180 score 1.8 state AK Name: Dean, dtype: object
  4. طريقة أخرى مع الحلقات: d = {1:200,2:100,3:400} temp = 0 for ele in d.values(: if ele == 200: print("True") temp = 1 break if temp == 0: print("False")
  5. بإمكانك استخدم الكود التالي: def func(): num1 = int(input("enter the 1st number:")) # المستخدم يدخل العدد الأول num2 = int(input("enter the second number:")) # المستخدم يدخل العدد الثاني if num1>num2: # التحقق من أن العدد الأول أكبر من الثاني print("error") return l = [] for i in range(num1,num2+1): # توليد الأعداد المحصورة بين العددين l.append(i) for ele in l: # طباعة الترتيب الصحيح print(ele) for ele in reversed(l): # طباعة الترتيب المعكوس print(ele) func()
  6. كيف أقوم بتحويل كود بايثون موجود إلى ملف EXE؟
  7. اضغط على اشارة ال + في اسفل الشاشة، فتنقلك الى المكان المخصص لتنزيل المكتبة.
  8. يوجد عدة احتمالات للمشكلة. احيانا يمكن حل المشكلة من خلال تحميل بعض المكتبات الداعمة للويندوز من هنا كما يمكنك ان تقوم بتحميل المكتبة من خلال برنامج Pycharm ، وذلك بالذهاب الى File > Settings > Python interpreter ثم البحث عن المكتبة و إضافتها.
  9. هنالك عدة حلول للمشكلة حسب منشئها. 1- بإمكانك حذف ال Object الخاصة بالعملة بعد أن يقوم اللاعب الاصطدام بها، و في هذه الحالة سيتم إجراء الزيادة لمرة واحدة. 2- بإمكانك منح العملة متغيرا يساوي القيمة 10، و عند ملامسة اللاعب لها تقوم بإنقاص قيمة هذا المتغير بمقدار 10. كما أن الطرق التي وردت في الإجابة السابقة قد تكون صحيحة حسب طبيعة المشكلة.
  10. المثال السابق يعالج حالة القوائم، lists. أما في حال كنت تقصد مصفوفات Numpy Array فبإمكانك استخدام الكود التالي: import numpy as np # تحميل مكتبة numpy array1 = np.array([0, 10, 20, 40, 60]) # تعريف المصفوفة الأولى print("Array1: ",array1) # طباعة قيمتها للتأكد من أنها اصبحت مصفوفة array2 = [10, 30, 40] # تعريف المصفوفة الثانية print("Array2: ",array2) # طباعة قيمتها للتأكد من أنها اصبحت مصفوفة print("Common values between two arrays:") print(np.intersect1d(array1, array2)) # ايجاد القيم المشتركة و طباعتها
  11. يوجد أيضا مكتبة PyQT5 والتي تعتبر أسهل مكتبة لتصميم الواجهات، حيث بإمكانك تصميم الواجهة بالسحب و الإفلات و ذلك من خلال استخدام PyQT5 Designer. PyQT5 Designer رابط التحميل و بعد تصميم الواجهة تقوم بحفظ الملف التصميمي بامتداد UI. ثم تقوم بتحميل Pyqt5 : conda install pyqt ثم تقوم بتحويلها إلى ملف .py من خلال كتابة الأمر التالية : python -m PyQt5.uic.pyuic -x [FILENAME].ui -o [FILENAME].py
  12. يختلف الأمر حسب شكل البانات التي تتعامل معها. مثلا ان كانت الباينات ضمن مصفوفة Numpy فيمكنك حفظها عن طريق : from numpy import asarray from numpy import savetxt # عرف البيانات data = asarray([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]]) # احفظها كملف CSV savetxt('data.csv', data, delimiter=',') و يمكنك قراءتها كما يلي: from numpy import loadtxt # تحميل المصفوفة data = loadtxt('data.csv', delimiter=',') # طباعة المصفوفة print(data)
  13. كما يمكنك استخدام هذه الطريقة لطباعة جدول الضرب لكافة الأعداد من ال 1 و حتى العدد المدخل من قبل المستخدم: n = int(input("ادخل الاعدد الذي ترغب بتوليد الجدول اليه? ")) m = list(list(range(1*i,(n+1)*i, i)) for i in range(1,n+1)) for i in m: i = [str(j).rjust(len(str(m[-1][-1]))+1) for j in i] print(''.join(i))
  14. الحل الصحيح هو: if (2*C + P - 4*D < c) and P < 0 and d > 0: A = C - D elif D<0: A = C
  15. بشكل عام يوجد عدة طرق لإنشاء زر، و تختلف حسب الغاية و المكتبة المستخدمة، فمثلا، باستخدام مكتبة Tkinter: import Tkinter # نستدعي المكتبة import tkMessageBox # من اجل انشاء راسالة بقصد التجريب top = Tkinter.Tk() # نقوم بتهئية البيئة def helloCallBack(): tkMessageBox.showinfo( "Hello Python", "Hello World") B = Tkinter.Button(top, text ="Hello", command = helloCallBack) B.pack() top.mainloop() و في حالتك تقوم بوضع الجزء المتعلق باستدعاء اللعبة داخل التابع helloCallBack.