اذهب إلى المحتوى

Adam Ebrahim

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

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

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

كل منشورات العضو Adam Ebrahim

  1. أحاول التدرب على سحب البيانات web scraping لكن عندما أحاول أن أقوم بتخزين محتوى الصفحات في ملف أحصل على الخطأ التالي: TypeError: string argument expected, got 'bytes سؤالي هو كيف أقوم بتحويل نص من نوع byte مثل b'content' إلى نص عادي 'content'؟
  2. أحاول أن أقوم بعمل حلقة تكرار عن طريق دالة تكرارية recursive function لكن بعد فترة من التشغيل (بالضبط في الفهرس index رقم 997) يظهر لي الخطأ التالي: RecursionError: maximum recursion depth exceeded in comparison ما سبب هذا الخطأ وكيف أقوم بإصلاحه؟
  3. أريد أن أعرف ما الفرق بين input و raw_input، كنت أتابع درس وقام المدرب بإستخدام input ثم قام بتغيرها إلى raw_input، حاولت أن أقوم بالتجربة لكن يظهر لي الخطأ التالي: NameError: name 'raw_input' is not defined
  4. أحاول أن أقوم باستبدال جزء من نص بنص آخر، لكن يبدو أن الدالة replace لا تعمل على الإطلاق >>> name = "Adam" >>> name.replace('am', 'd') 'Add' >>> name # لا يتم تحديث name على الإطلا 'Adam' >>> حاولت أن أستخدم أكثر من دالة أخرى ولكن نفس الأمر لا يتم تحديث المتغير أبدا
  5. أحاول تنفيذ أوامر في سطر الأوامر من بايثون من خلال المكتبة subprocess ، لكن لدي سؤال وهو ما الفرق الذي يحدث عندما أستعمل المدخل shell=True وعندما لا أستعمله؟ كالتالي: callProcess = subprocess.Popen(['pwd'], shell=True) # Output: /mnt/c/Users/Adam callProcess = subprocess.Popen(['pwd']) # Output: /mnt/c/Users/Adam كلتا الطريقتين تعملان بدون مشكلة ولا أجد أي فرق بينهما، أي الطريقتين يجب أن أستخدم؟
  6. ما فائدة المتغير _ (شرطة سفلية) في جملة for التالية for _ in range(10): print("hi") لماذا لا يتم إستعمال متغير عادي هنا مثل i على سبيل المثال؟ وهل له استخدامات أخرى؟
  7. لدي مشكلة متعلقة بـ sys.stdout وأريد أن أقوم بإيقاف الـ output buffering مؤقتًا، هل توجد طريقة لفعل ذلك بدون استعمال العلم -u في سطر الأوامر؟ أي القيام بهذا الأمر عن طريق كود بايثون.
  8. أريد أن أقوم بتشغيل سكريبت بايثون بطريقة مباشرة، لذلك وضعت في بداية الملف الكود التالي: #!/usr/bin/env python لكن أريد أيضًا أن أقوم بعمل unbuffered output لذلك قمت بإضافة -u إلى الأمر السابق: #!/usr/bin/env python -u لكن المشكلة تحدث عندما أقوم بتشغيل الملف حيث أحصل على الخطأ التالي: python -u: no such file or directory
  9. ما الفرق بين الدالتين append () و extension ()؟ عندما قمت بمحاولة استخدام كلا الدالتين حصل على نفس النتيجة تقريبًا ويتم إضافة العناصر إلى القائمة بدون مشكلة!! x = [ ] x.append([1,2,3]) x.extend([4,5,6]) x.insert([4,5,6])
  10. أحاول أن أقوم بتحويل نص إلى رقم صحيح كالتالي: >>> x = "10.111 " >>> int(x) لكني أحصل على الخطأ التالي: Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for int() with base 10: '10.111 ' ثم حاول أن أقوم بإزالة المسافات الإضافية من النص كالتالي: >>> int(x.strip()) لكن تحدث نفس المشكلة وأحصل على نفس الخطأ، كيف أقوم بتحويل هذا النص إلى رقم صحيح؟
  11. أحاول أن أقوم بتخزين مسار مجلد سطح المكتب في متغير path كالتالي: >>> x = 'C:\Users\name\Desktop' ولكن أحصل على الخطأ التالي: File "<stdin>", line 1 SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape وعندما أحاول تخزين مسارات أخرى وطباعتها، يتم طباعتها في سطرين مختلفين كالتالي: >>> x = 'C:\Windows\System32\networklist' >>> print(x) C:\Windows\System32 etworklist >>>
  12. كيف أقوم تثبيته أو التحقق من الإصدار؟
  13. وجدت كود يحتوي على بعض الأصناف classes ومن ضمن هذه الخصائص وجدت أنها تسمى بهذه الطريقة __var = “value” شرطتين سفليتين ( _ _ )المشكلة أن هذه الخصائص لا يتم طباعتها عندما أحاول ذلك وأحصل على الخطأ التالي: AttributeError: 'X' object has no attribute '__var' ما هي هذه المتغيرات وهل توجد طريقة لطباعتها أو الحصول على قيمتها؟
  14. حاولت أن أقوم بتثبيت مكتبة dulwich لعمل محاكاة لـ Git وكيفية عمله، وقمت بتثبيتها من خلال الأمر التالي: pip install dulwich لكن في كل مرة أحصل على الخطأ error: Unable to find vcvarsall.bat ثم حاولت أن أقوم بتثبيت المكتبة يدويًا من خلال تحميل الكود المصدري الخاص بها ومحاولة تثبيته من خلال الأمر التالي: python setup.py install لكني أحصل على نفس الخطأ running build_ext building 'dulwich._objects' extension error: Unable to find vcvarsall.bat
  15. أريد أن أقوم بعمل قاموس يحتوي على بعض العناصر كالتالي: {2:True, 1:False, 4:None, 3:”Hi”} ومن المفترض أن يتم تحويله إلى التالي: {1:False, 2:True, 3:”Hi”, 4:None} حاولت البحث عن حل لهذه المشكلة أكثر من مرة ولكن كل الحلول التي وجدها تستخدم الدالة sorted التي تقوم بإعادة tuple وليس قاموس dictionary
  16. أحاول أن أقوم بعمل دالة تقوم بإستقبال أمر (كـنص) وتقوم هذه الدالة بتنفيذ هذا الأمر في الـ terminal أو سطر الأوامر. بعد ذلك تقوم الدالة بإرجاع النتيجة (كـنص أيضًا) وفي حالة لم يكن هناك نتيجة (لا يوجد مخرج في سطر الأوامر) تعيد None هنا مثال pseudo code: def execute(cmd): pass print(execute(“ipconfig”)) # يتم تفيذ الأمر ipconfig في سطر الأوامر
  17. أحاول أن أقوم بعمل دالة تقوم بإرجاع قيم ثابتة fixed بناءً على مدخل معين للدالة. في لغات أخرى مثل C أو PHP كنت سأستعمل جملة switch أو case لكن في بايثون لا أعتقد أنه توجد جملة switch من الأساس. ما أفضل حل للقيام بمثل هذا الأمر حسب معايير PEP؟ أستعمل python 3.10 (أحدث إصدار)
  18. مرحبًا أحاول فهم كيفية استخدام الدالة super()، عندما قمت بعمل صنفين classes واحد بداخله دالة super والآخر بدونها لم أجد أي فرق على الإطلاق. ما هو إستخدام super وهل لها قيمة معينة؟ ما التغيرات التي تحدث للصنف عند إستعمالها؟
  19. ما هي أفضل طريقة لاستدعاء دالة معينة من خلال نص (اسم الدالة) في برنامج بايثون. على سبيل المثال ، لنفترض أن لديّ الصنف foo بداخله method تسمى bar ، ولدي نص يحتوي على كلمة "bar". ما هي أفضل طريقة لاستدعاء foo.bar()؟
  20. هل من الممكن عمل Static Class في بايثون، أعلم أنه من الممكن فعل ذلك في لغات أخرى مثل PHP ولكن هل من الممكن أن يكون لدينا متغيرات أو توابع methods من نوع Static في صنف Class في بايثون؟ كيف يمكن إتمام هذا الأمر؟
  21. لدي ملفين بايثون وأريد أن أقوم بإستدعاء الأول في داخل الثاني حتى أتمكن من إستخدام الدوال والمتغيرات الموجدة فيه، وبنيه الملفات كالتالي: projects |── blog | |── helpers | |── files.py |── dashboard |── helpers |── all.py كيف أقوم بإستدعاء الملف files.py من داخل الملف all.py؟
  22. كيفية ترتيب قائمة بإستخدام طريقة Natural sort order في بايثون؟ لدي قائمة بالشكل التالي: ['Item10', 'item2', 'Item9', 'item3'] وأريد أن أقوم بترتيب هذه القائمة بطريقة Natural sort order لتكون النتيجة كالتالي: ['item2', 'Item9', 'item10', 'Item11'] حاولت أن أستعمل الدالة sorted وكذلك التابع sort لكن كانت النتيجة كالتالي: ['Item10', 'Item9', 'item2', 'item3'] لاحظ الأرقام في كل عنصر وكذلك حرف i و I كيف يمكنني أن أقوم بترتيب القائمة للحصول على النتيجة الأولى؟
  23. كيف يمكنني إستدعاء ملف Python من خلال مسار الملف الكامل؟ مثلًا لدي ملف في المسار التالي: C:\Users\Adam\OneDrive\Desktop\script.py كيف يمكنني إستدعاء هذا الملف كما نفعل بإستخدام جملة import ، لاحظ أن الملف يمكن أن يكون في أي مكان في القرص الصلب.
  24. لدي حلقة تكرار وفي داخل هذه الحلقة يتم طباعة نص معين، لكن المشكلة أن دالة print تقوم بطباعة النصوص أسفل بعضها البعض وأنا أريد أن يتم طباعة كل النصوص في نفس السطر. for i in range(10): print(i) """ Output: 0 1 2 4 5 6 7 8 9 أريد أن يتم الطباعة كالتالي: 0123456789 """ كيف أقوم بطباعة الأرقام بجانب بعضها البعض؟
  25. كيف أقوم بضرب مجموعة من القاوائم للحصول على كل الإحتمالات الممكنة الناتجة عن ضرب هذه القوائم، على سبيل المثال لدي القائمة التالية: sections = [ [1, 2, 3], [4, 5], [6, 7] ] كيف أحصل على مجموعة من القائم كالتالي: [ [1, 4, 6], [1, 4, 7], [1, 5, 6], [1, 5, 7], [2, 4, 6], [2, 4, 7], [2, 5, 6], [2, 5, 7], [3, 4, 6], [3, 4, 7], [3, 5, 6], [3, 5, 7] ]
×
×
  • أضف...