تحدي بايثون: عدّ الكلمات
اكتب برنامجًا يطلب من المستخدم إدخال جملة، ثم يطبع:
- عدد الأحرف
- عدد الكلمات
- عدد مرات تكرار كل كلمة
Example Input
Expected Output
### الشروط
- اكتب الحل بنفسك
#Python #Challenge #PythonChallenge
اكتب برنامجًا يطلب من المستخدم إدخال جملة، ثم يطبع:
- عدد الأحرف
- عدد الكلمات
- عدد مرات تكرار كل كلمة
Example Input
python is great and python is easy
Expected Output
Characters: 34
Words: 6
python: 2
is: 2
great: 1
and: 1
easy: 1
### الشروط
- اكتب الحل بنفسك
#Python #Challenge #PythonChallenge
إذا كنت تريد تشغيل أكثر من مهمة في نفس الوقت داخل برنامج Python، فمكتبة threading المدمجة تعتبر من أهم الأدوات التي يجب أن تعرفها.
هذه المكتبة تسمح لك بإنشاء Threads لتشغيل وظائف متعددة بشكل متزامن، وهي مفيدة جدًا في المهام التي تنتظر الشبكة أو الملفات أو أي عمليات I/O بدلًا من جعل البرنامج يتوقف وينتظر.
التثبيت:
مثال سريع:
تُستخدم كثيرًا في بناء أدوات أسرع وأكثر استجابة، خاصة عند التعامل مع الطلبات، التحميل، أو تنفيذ عدة مهام خفيفة معًا.
رابط التوثيق:
https://docs.python.org/3/library/threading.html
#Python #Threading #Concurrency #DeveloperTools
هذه المكتبة تسمح لك بإنشاء Threads لتشغيل وظائف متعددة بشكل متزامن، وهي مفيدة جدًا في المهام التي تنتظر الشبكة أو الملفات أو أي عمليات I/O بدلًا من جعل البرنامج يتوقف وينتظر.
التثبيت:
لا تحتاج تثبيت، لأنها مدمجة داخل Pythonمثال سريع:
import threading
def task(name):
print(f"Hello from {name}")
t1 = threading.Thread(target=task, args=("Thread 1",))
t2 = threading.Thread(target=task, args=("Thread 2",))
t1.start()
t2.start()
t1.join()
t2.join()
تُستخدم كثيرًا في بناء أدوات أسرع وأكثر استجابة، خاصة عند التعامل مع الطلبات، التحميل، أو تنفيذ عدة مهام خفيفة معًا.
رابط التوثيق:
https://docs.python.org/3/library/threading.html
#Python #Threading #Concurrency #DeveloperTools
❤3
إذا كنت تريد بناء تطبيقات ويب أو API بسرعة وببساطة في Python، فمكتبة Flask تعتبر من أشهر الخيارات وأخفها.
مكتبة Flask هي إطار عمل صغير ومرن، مناسب جدًا للمبتدئين، وممتاز أيضًا للمشاريع السريعة وواجهات API والـ prototypes لأنك تبدأ به بسرعة بدون تعقيد كبير.
التثبيت:
مثال سريع:
ممتاز لتطبيقات الويب الخفيفة، لوحات التحكم، وخدمات الـ backend الصغيرة.
GitHub
مكتبة Flask هي إطار عمل صغير ومرن، مناسب جدًا للمبتدئين، وممتاز أيضًا للمشاريع السريعة وواجهات API والـ prototypes لأنك تبدأ به بسرعة بدون تعقيد كبير.
التثبيت:
pip install flask
مثال سريع:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def home():
return "Hello, Flask!"
ممتاز لتطبيقات الويب الخفيفة، لوحات التحكم، وخدمات الـ backend الصغيرة.
GitHub
❤2😁1
🔐 PyCryptodome: تشفير احترافي داخل Python
إذا كنت تحتاج تشفير بيانات، إنشاء مفاتيح، أو استخدام خوارزميات مثل AES وRSA داخل مشروعك، فمكتبة PyCryptodome تعتبر من أشهر الخيارات العملية في بايثون.
تستخدمها عندما تريد حماية نصوص، ملفات، Tokens، أو بناء أدوات أمنية تعليمية بطريقة واضحة وسهلة.
التثبيت:
مثال سريع لتشفير رسالة بـ AES:
الميزة الجميلة أنها تعطيك واجهة Python بسيطة للتعامل مع مفاهيم قوية في التشفير بدون تعقيد زائد.
مفيدة جدًا لمن يتعلم الأمن السيبراني أو يبني أدوات Python تحتاج حماية للبيانات.
#Python #CyberSecurity
إذا كنت تحتاج تشفير بيانات، إنشاء مفاتيح، أو استخدام خوارزميات مثل AES وRSA داخل مشروعك، فمكتبة PyCryptodome تعتبر من أشهر الخيارات العملية في بايثون.
تستخدمها عندما تريد حماية نصوص، ملفات، Tokens، أو بناء أدوات أمنية تعليمية بطريقة واضحة وسهلة.
التثبيت:
pip install pycryptodome
مثال سريع لتشفير رسالة بـ AES:
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
key = get_random_bytes(16)
cipher = AES.new(key, AES.MODE_EAX)
ciphertext, tag = cipher.encrypt_and_digest(b"secret message")
print(ciphertext.hex())
الميزة الجميلة أنها تعطيك واجهة Python بسيطة للتعامل مع مفاهيم قوية في التشفير بدون تعقيد زائد.
مفيدة جدًا لمن يتعلم الأمن السيبراني أو يبني أدوات Python تحتاج حماية للبيانات.
#Python #CyberSecurity
🔥3
📦 marshal: تحويل كائنات Python إلى بيانات ثنائية
مكتبة marshal مدمجة داخل Python، وتستخدم لتحويل بعض كائنات بايثون إلى صيغة ثنائية Binary ثم إرجاعها لاحقًا.
أهم استخدام لها داخليًا داخل Python هو تخزين bytecode في ملفات .pyc، لذلك ستقابلها كثيرًا عند فهم طريقة عمل المفسر.
التثبيت:
ال
مثال سريع:
لكن انتبه: marshal ليست بديلًا آمنًا لـ JSON أو pickle لتبادل البيانات بين البرامج، ولا يُنصح بقراءة بيانات marshal من مصدر غير موثوق.
استخدمها للتعلم وفهم Python internals، أما لحفظ بيانات تطبيقك غالبًا JSON يكون أوضح وأكثر استقرارًا.
#Python #PythonInternals
مكتبة marshal مدمجة داخل Python، وتستخدم لتحويل بعض كائنات بايثون إلى صيغة ثنائية Binary ثم إرجاعها لاحقًا.
أهم استخدام لها داخليًا داخل Python هو تخزين bytecode في ملفات .pyc، لذلك ستقابلها كثيرًا عند فهم طريقة عمل المفسر.
التثبيت:
ال
marshal مدمجة مع Python ولا تحتاج تثبيتمثال سريع:
import marshal
data = {"name": "Ali", "level": 3}
binary = marshal.dumps(data)
restored = marshal.loads(binary)
print(restored)
لكن انتبه: marshal ليست بديلًا آمنًا لـ JSON أو pickle لتبادل البيانات بين البرامج، ولا يُنصح بقراءة بيانات marshal من مصدر غير موثوق.
استخدمها للتعلم وفهم Python internals، أما لحفظ بيانات تطبيقك غالبًا JSON يكون أوضح وأكثر استقرارًا.
#Python #PythonInternals
😱1
🛡️ تشويش كود Python باستخدام marshal
يمكن استخدام marshal لتحويل كود Python إلى bytecode ثنائي ثم تشغيله لاحقًا، وهذا يجعل قراءة السورس مباشرة أصعب قليلًا.
الفكرة: نقرأ ملف Python، نعمل له compile، ثم نخزن الناتج بصيغة marshal داخل ملف تشغيل صغير.
التثبيت:
مثال مبسط:
تشغيل الملف لاحقًا:
مهم: هذا ليس تشفيرًا حقيقيًا ولا حماية كاملة. هو مجرد Obfuscation يجعل القراءة أصعب، ويمكن عكسه أو تحليله من شخص خبير.
للحماية الأفضل: لا تضع أسرارًا داخل الكود، واستخدم متغيرات البيئة، ووزّع التطبيق بصيغة مناسبة مثل PyInstaller عند الحاجة.
#Python #CyberSecurity #Obfuscation
يمكن استخدام marshal لتحويل كود Python إلى bytecode ثنائي ثم تشغيله لاحقًا، وهذا يجعل قراءة السورس مباشرة أصعب قليلًا.
الفكرة: نقرأ ملف Python، نعمل له compile، ثم نخزن الناتج بصيغة marshal داخل ملف تشغيل صغير.
التثبيت:
marshal مدمجة مع Python ولا تحتاج تثبيتمثال مبسط:
import marshal
source = 'print("Protected code")'
code = compile(source, "app.py", "exec")
with open("app_protected.bin", "wb") as f:
f.write(marshal.dumps(code))
تشغيل الملف لاحقًا:
import marshal
with open("app_protected.bin", "rb") as f:
code = marshal.loads(f.read())
exec(code)
مهم: هذا ليس تشفيرًا حقيقيًا ولا حماية كاملة. هو مجرد Obfuscation يجعل القراءة أصعب، ويمكن عكسه أو تحليله من شخص خبير.
للحماية الأفضل: لا تضع أسرارًا داخل الكود، واستخدم متغيرات البيئة، ووزّع التطبيق بصيغة مناسبة مثل PyInstaller عند الحاجة.
#Python #CyberSecurity #Obfuscation
🎉1
🔐 Flask-Login: إدارة تسجيل الدخول في Flask
مكتبة Flask-Login تساعدك على إدارة جلسات المستخدمين في تطبيقات Flask: تسجيل الدخول، تسجيل الخروج، تذكر المستخدم، وحماية الصفحات الخاصة.
بدل ما تتعامل يدويًا مع session في كل صفحة، تعطيك أدوات جاهزة مثل login_user وlogout_user وlogin_required.
التثبيت:
مثال سريع:
الفكرة المهمة: أي route عليه login_required لن يفتح إلا إذا كان المستخدم مسجل دخول.
تحتاج أيضًا تعريف user_loader حتى يعرف Flask-Login كيف يجلب بيانات المستخدم من قاعدة البيانات.
مفيدة جدًا لأي مشروع Flask فيه لوحة تحكم، حسابات مستخدمين، أو صفحات خاصة.
#Python #Flask #WebDevelopment
مكتبة Flask-Login تساعدك على إدارة جلسات المستخدمين في تطبيقات Flask: تسجيل الدخول، تسجيل الخروج، تذكر المستخدم، وحماية الصفحات الخاصة.
بدل ما تتعامل يدويًا مع session في كل صفحة، تعطيك أدوات جاهزة مثل login_user وlogout_user وlogin_required.
التثبيت:
pip install Flask-Login
مثال سريع:
from flask import Flask
from flask_login import LoginManager, login_required
app = Flask(__name__)
app.secret_key = "change-me"
login_manager = LoginManager()
login_manager.init_app(app)
@app.route("/dashboard")
@login_required
def dashboard():
return "Welcome back"
الفكرة المهمة: أي route عليه login_required لن يفتح إلا إذا كان المستخدم مسجل دخول.
تحتاج أيضًا تعريف user_loader حتى يعرف Flask-Login كيف يجلب بيانات المستخدم من قاعدة البيانات.
مفيدة جدًا لأي مشروع Flask فيه لوحة تحكم، حسابات مستخدمين، أو صفحات خاصة.
#Python #Flask #WebDevelopment
🌐 Flask-RESTful: بناء REST APIs بسهولة مع Flask
مكتبة Flask-RESTful تساعدك على بناء REST API داخل Flask بطريقة مرتبة، حيث تنظّم كل Endpoint كـ Resource يحتوي دوال مثل get وpost.
بدل كتابة routes كثيرة يدويًا، تستطيع فصل منطق الـ API في Classes واضحة، وهذا يجعل المشروع أسهل في التوسعة والصيانة.
التثبيت:
مثال سريع:
تجربة الطلب:
مناسبة لمشاريع Flask التي تحتاج API للوحة تحكم، تطبيق موبايل، أو Frontend منفصل مثل React.
#Python #Flask #API
مكتبة Flask-RESTful تساعدك على بناء REST API داخل Flask بطريقة مرتبة، حيث تنظّم كل Endpoint كـ Resource يحتوي دوال مثل get وpost.
بدل كتابة routes كثيرة يدويًا، تستطيع فصل منطق الـ API في Classes واضحة، وهذا يجعل المشروع أسهل في التوسعة والصيانة.
التثبيت:
pip install Flask-RESTful
مثال سريع:
from flask import Flask
from flask_restful import Api, Resource
app = Flask(__name__)
api = Api(app)
class Hello(Resource):
def get(self):
return {"message": "Hello API"}
api.add_resource(Hello, "/api/hello")
app.run(debug=True)
تجربة الطلب:
curl http://127.0.0.1:5000/api/helloمناسبة لمشاريع Flask التي تحتاج API للوحة تحكم، تطبيق موبايل، أو Frontend منفصل مثل React.
#Python #Flask #API
❤4
⚡ مكتبة FastAPI — لبناء API سريع ببايثون
إذا كنت تريد إنشاء REST API حديث بسرعة، فـ FastAPI خيار ممتاز لأنه يعتمد على
التثبيت:
مثال سريع:
التشغيل:
بعدها افتح:
المصادر:
https://fastapi.tiangolo.com/
إذا كنت تريد إنشاء REST API حديث بسرعة، فـ FastAPI خيار ممتاز لأنه يعتمد على
type hints ويوفّر توثيقًا تلقائيًا عبر Swagger.التثبيت:
pip install fastapi uvicorn
مثال سريع:
from fastapi import FastAPI
app = FastAPI()
@app.get("/hello")
def hello():
return {"message": "Hello Pythonarabe"}
التشغيل:
uvicorn main:app --reload
بعدها افتح:
http://127.0.0.1:8000/docsالمصادر:
https://fastapi.tiangolo.com/
❤3