مكتبة قوية لتحويل لغة Python كاملة إلى العربية مع دعم اللهجات المختلفة
Project description
pyarabify
مكتبة قوية لتحويل Python كاملة للعربية
المطور: MERO
المحتويات
- نظرة عامة
- المميزات
- التثبيت
- البدء السريع
- الاستخدام التفصيلي
- اللهجات المدعومة
- معالجة الأخطاء
- الأمثلة
- API المرجعي
- المساهمة
نظرة عامة
pyarabify هي مكتبة Python ثورية وقوية تتيح لك كتابة وتنفيذ أكواد Python بالكامل باللغة العربية. تدعم المكتبة جميع إصدارات Python من 2.7 وحتى أحدث إصدار، وتوفر ترجمة شاملة لجميع الكلمات المحجوزة، الدوال المدمجة، أنواع الأخطاء، والوحدات الشائعة.
لماذا pyarabify؟
- تعليم البرمجة بالعربية: مثالية للمبتدئين الذين يفضلون التعلم بلغتهم الأم
- قاموس شامل: أكثر من 12,000+ كلمة مترجمة تغطي كامل لغة Python
- دعم اللهجات: أربع لهجات عربية مختلفة (فصحى، مختصر، مصري، خليجي)
- قابلة للتوسع: أضف كلماتك المخصصة بسهولة
- أخطاء بالعربية: رسائل خطأ مفهومة ومترجمة بالكامل
- ترجمة عكسية: حول أكوادك العربية لإنجليزية والعكس
- متوافقة 100%: تعمل مع جميع مكتبات Python القياسية
- دعم Git: 57 دالة لإدارة المستودعات بالعربية
- دعم الويب: افتح الروابط، احصل على المحتوى، حمل الملفات
المميزات
ترجمة كاملة للكلمات المحجوزة
import → استرداد
from → من
def → دالة
class → صنف
if → اذا
for → لكل
while → طالما
try → حاول
except → ماعدا
return → ارجع
دعم جميع الدوال المدمجة
print() → اطبع()
input() → ادخال()
len() → طول()
range() → نطاق()
open() → افتح()
sum() → مجموع()
max() → اكبر()
min() → اصغر()
ترجمة الأخطاء والاستثناءات
ValueError → خطأ_قيمة
TypeError → خطأ_نوع
SyntaxError → خطأ_صيغة
NameError → خطأ_اسم
IndexError → خطأ_فهرس
KeyError → خطأ_مفتاح
أربع لهجات مختلفة
- الفصحى (formal): اللغة العربية الفصيحة
- مختصر (short): كلمات مختصرة للكتابة السريعة
- مصري (egyptian): اللهجة المصرية
- خليجي (gulf): اللهجة الخليجية
التثبيت
من PyPI
pip install pyarabify
من المصدر
git clone https://github.com/6x-u/pyarabify.git
cd pyarabify
pip install -e .
التحقق من التثبيت
pyarabify --help
البدء السريع
1. أول برنامج لك بالعربية
from pyarabify import execute
code = '''
اطبع("اهلين دوددد")
'''
execute(code)
النتيجة:
اهلين دوددد
2. استخدام المتغيرات والعمليات
from pyarabify import execute
code = '''
العدد_الأول = 10
العدد_الثاني = 20
المجموع = العدد_الأول + العدد_الثاني
اطبع("المجموع =", المجموع)
'''
execute(code)
النتيجة:
المجموع = 30
3. تنفيذ ملف
أنشئ ملف test.py:
اطبع("مرحباً من الملف!")
دالة جمع(أ, ب):
ارجع أ + ب
النتيجة = جمع(5, 3)
اطبع("5 + 3 =", النتيجة)
نفذ الملف:
from pyarabify import execute_file
execute_file('test.py')
الاستخدام التفصيلي
استخدام الدوال
from pyarabify import execute
code = '''
دالة حساب_المساحة(الطول, العرض):
المساحة = الطول * العرض
ارجع المساحة
دالة طباعة_معلومات(الاسم, العمر):
اطبع("الاسم:", الاسم)
اطبع("العمر:", العمر)
مساحة_المستطيل = حساب_المساحة(10, 5)
اطبع("المساحة =", مساحة_المستطيل)
طباعة_معلومات("أحمد", 25)
'''
execute(code)
استخدام الأصناف (Classes)
from pyarabify import execute
code = '''
صنف طالب:
دالة __init__(الذات, الاسم, الدرجة):
الذات.الاسم = الاسم
الذات.الدرجة = الدرجة
دالة عرض_المعلومات(الذات):
اطبع("الطالب:", الذات.الاسم)
اطبع("الدرجة:", الذات.الدرجة)
دالة نجح(الذات):
اذا الذات.الدرجة >= 50:
ارجع صحيح
والا:
ارجع خطأ
طالب1 = طالب("محمد", 85)
طالب1.عرض_المعلومات()
اذا طالب1.نجح():
اطبع("ناجح!")
'''
execute(code)
دعم Git بالعربية
from pyarabify import git
git.احصل_على_الحالة()
git.اضف_للتتبع(".")
git.احفظ_التغييرات("تحديث المشروع")
git.ادفع_إلى_المستودع()
فتح الروابط والتحميل
from pyarabify import web
web.افتح_رابط("https://github.com")
المحتوى = web.الحصول("https://api.github.com")
اطبع(المحتوى)
web.تحميل("https://example.com/file.pdf", "ملف.pdf")
اللهجات المدعومة
1. الفصحى (formal)
from pyarabify import execute
code = '''
دالة اهلا():
اطبع("مرحباً بالعربية الفصحى")
اهلا()
'''
execute(code, dialect='formal')
2. المختصر (short)
from pyarabify import execute
code = '''
دل اهلا():
قول("مرحباً بالاختصارات")
اهلا()
'''
execute(code, dialect='short')
3. المصري (egyptian)
from pyarabify import execute
code = '''
وظيفة اهلا():
اطبع("أهلاً باللهجة المصرية")
اهلا()
'''
execute(code, dialect='egyptian')
4. الخليجي (gulf)
from pyarabify import execute
code = '''
دالة اهلا():
اطبع("هلا باللهجة الخليجية")
اهلا()
'''
execute(code, dialect='gulf')
معالجة الأخطاء
أخطاء بالعربية
from pyarabify import execute
code = '''
حاول:
النتيجة = 10 / 0
ماعدا خطأ_صفر:
اطبع("خطأ: لا يمكن القسمة على صفر!")
'''
execute(code)
معالجة أنواع مختلفة من الأخطاء
from pyarabify import execute
code = '''
حاول:
القائمة = [1, 2, 3]
اطبع(القائمة[10])
ماعدا خطأ_فهرس:
اطبع("الفهرس خارج النطاق")
حاول:
الرقم = عدد_صحيح("نص")
ماعدا خطأ_قيمة:
اطبع("القيمة غير صالحة للتحويل")
'''
execute(code)
الأمثلة
مثال 1: حاسبة متقدمة
from pyarabify import execute
code = '''
صنف حاسبة:
دالة جمع(الذات, أ, ب):
ارجع أ + ب
دالة طرح(الذات, أ, ب):
ارجع أ - ب
دالة ضرب(الذات, أ, ب):
ارجع أ * ب
دالة قسمة(الذات, أ, ب):
حاول:
ارجع أ / ب
ماعدا خطأ_صفر:
ارجع "خطأ: قسمة على صفر"
الآلة = حاسبة()
اطبع("10 + 5 =", الآلة.جمع(10, 5))
اطبع("10 - 5 =", الآلة.طرح(10, 5))
'''
execute(code)
مثال 2: إدارة قائمة مهام
from pyarabify import execute
code = '''
صنف قائمة_المهام:
دالة __init__(الذات):
الذات.المهام = []
دالة اضف_مهمة(الذات, المهمة):
الذات.المهام.append(المهمة)
اطبع("تمت إضافة:", المهمة)
دالة عرض_المهام(الذات):
اذا طول(الذات.المهام) == 0:
اطبع("لا توجد مهام")
والا:
اطبع("قائمة المهام:")
لكل عدد في نطاق(طول(الذات.المهام)):
اطبع(عدد + 1, "-", الذات.المهام[عدد])
المهام = قائمة_المهام()
المهام.اضف_مهمة("دراسة البرمجة")
المهام.اضف_مهمة("قراءة كتاب")
المهام.عرض_المهام()
'''
execute(code)
مثال 3: استخدام المكتبات
from pyarabify import execute
code = '''
استرداد رياضيات كـ ر
استرداد عشوائي كـ ع
دالة حساب_الدائرة(نصف_القطر):
المساحة = ر.pi * ر.pow(نصف_القطر, 2)
المحيط = 2 * ر.pi * نصف_القطر
ارجع المساحة, المحيط
مساحة, محيط = حساب_الدائرة(5)
اطبع("مساحة الدائرة:", مساحة)
اطبع("محيط الدائرة:", محيط)
رقم_عشوائي = ع.randint(1, 100)
اطبع("رقم عشوائي:", رقم_عشوائي)
'''
execute(code)
API المرجعي
execute
تنفيذ كود Python مكتوب بالعربية.
from pyarabify import execute
result = execute(
code='اطبع("اهلين دوددد")',
dialect='formal',
show_english=False,
globals_dict=None,
locals_dict=None
)
المعاملات:
code(str): الكود العربي المراد تنفيذهdialect(str): اللهجة المستخدمة (formal/short/egyptian/gulf)show_english(bool): عرض الكود المترجم للإنجليزيةglobals_dict(dict): المتغيرات العامةlocals_dict(dict): المتغيرات المحلية
القيمة المرجعة:
- dict: {'status': 'success/error', 'english_code': '...'}
execute_file
تنفيذ ملف Python مكتوب بالعربية.
from pyarabify import execute_file
execute_file('program.py', dialect='formal', show_english=False)
المعاملات:
filepath(str): مسار الملفdialect(str): اللهجة المستخدمةshow_english(bool): عرض الكود المترجم
to_english
تحويل كود عربي إلى إنجليزي.
from pyarabify import to_english
arabic = 'اطبع("اهلين دوددد")'
english = to_english(arabic)
print(english)
المعاملات:
arabic_code(str): الكود العربيdialect(str): اللهجة
القيمة المرجعة:
- str: الكود بالإنجليزية
to_arabic
تحويل كود إنجليزي إلى عربي.
from pyarabify import to_arabic
english = 'print("Hello")'
arabic = to_arabic(english)
print(arabic)
المعاملات:
english_code(str): الكود الإنجليزيdialect(str): اللهجة
القيمة المرجعة:
- str: الكود بالعربية
ArabicParser
فئة المحلل اللغوي الرئيسية.
from pyarabify import ArabicParser
parser = ArabicParser(dialect='formal')
parser.add_custom_word('اعرض', 'display')
code = parser.to_english('اعرض("اهلين دوددد")')
الدوال:
parse(code): تحليل وترجمة الكودadd_custom_word(arabic, english, category): إضافة كلمة مخصصةset_dialect(dialect): تغيير اللهجةget_available_dialects(): الحصول على اللهجات المتاحة
git
دوال إدارة Git بالعربية.
from pyarabify import git
git.احصل_على_الحالة()
git.اضف_للتتبع(".")
git.احفظ_التغييرات("رسالة الحفظ")
git.ادفع_إلى_المستودع()
git.اسحب_التحديثات()
git.استنسخ_مستودع("https://github.com/user/repo.git")
الدوال المتاحة (57 دالة):
احصل_على_الحالة(): git statusاضف_للتتبع(ملفات): git addاحفظ_التغييرات(رسالة): git commitادفع_إلى_المستودع(): git pushاسحب_التحديثات(): git pullاستنسخ_مستودع(رابط): git cloneانشئ_فرع(اسم): git branchبدل_الفرع(اسم): git checkoutادمج_الفرع(اسم): git merge- وأكثر من 45 دالة أخرى
web
دوال التعامل مع الويب والروابط.
from pyarabify import web
web.افتح_رابط("https://github.com")
المحتوى = web.الحصول("https://api.github.com/users/6x-u")
print(المحتوى)
web.تحميل("https://example.com/file.pdf", "ملف.pdf")
الدوال المتاحة:
افتح_رابط(url): فتح رابط في المتصفحالحصول(url): الحصول على محتوى صفحةتحميل(url, filename): تحميل ملف من رابطافتح_في_تبويب_جديد(url): فتح في تبويب جديدافتح_في_نافذة_جديدة(url): فتح في نافذة جديدة
إضافة كلمات مخصصة
from pyarabify import ArabicParser
parser = ArabicParser()
parser.add_custom_word('اعرض', 'show', category='builtins')
parser.add_custom_word('سجل', 'log', category='builtins')
code = '''
دالة اعرض(رسالة):
اطبع("عرض:", رسالة)
اعرض("مرحباً بالكلمات المخصصة")
'''
from pyarabify import execute
execute(code)
الوضع التفاعلي (REPL)
pyarabify
أو من Python:
from pyarabify.src.exe import run_repl
run_repl(dialect='formal')
مثال على الاستخدام:
>>> اطبع("اهلين دوددد")
اهلين دوددد
>>> س = 10
>>> ص = 20
>>> اطبع(س + ص)
30
>>> خروج()
وداعاً!
القاموس الكامل
إحصائيات القاموس
- إجمالي الكلمات: 12,238+
- الكلمات المحجوزة: 60+
- الدوال المدمجة: 100+
- دوال القوائم والنصوص: 50+
- الاستثناءات: 30+
- المكتبات: 25+
- دوال Git: 57
- دوال الويب: 15+
المتطلبات
- Python 2.7 أو أعلى
- Python 3.x (جميع الإصدارات)
لا توجد متطلبات خارجية!
الأسئلة الشائعة
هل يمكنني مزج الكود العربي والإنجليزي؟
نعم، يمكنك استخدام الكود الإنجليزي الأصلي مع الكود العربي.
هل تعمل المكتبة مع Python 2؟
نعم، المكتبة متوافقة مع Python 2.7 وجميع إصدارات Python 3.
كيف أضيف كلمات جديدة؟
from pyarabify import ArabicParser
parser = ArabicParser()
parser.add_custom_word('كلمتك_العربية', 'english_word')
الترخيص
MIT License - انظر ملف LICENSE للتفاصيل.
المساهمة
نرحب بمساهماتك!
- Fork المشروع
- أنشئ branch جديد
- Commit تغييراتك
- Push للـ branch
- افتح Pull Request
الدعم
- المشاكل التقنية: GitHub Issues
- التواصل: @QP4RM على Telegram
- التوثيق: GitHub Repository
الشكر والتقدير
شكراً لاستخدامك pyarabify! نأمل أن تساعد هذه المكتبة في نشر البرمجة بالعربية.
إذا أعجبتك المكتبة، لا تنسى إعطائها نجمة على GitHub!
تم التطوير بواسطة MERO
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyarabify-2.0.0.tar.gz.
File metadata
- Download URL: pyarabify-2.0.0.tar.gz
- Upload date:
- Size: 74.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
87419bb5504ad42500f2c6eb6a8e6910d27607e8c861f788de5b43b695bd9eb4
|
|
| MD5 |
b6d8d1ac582e371d21542962266bc478
|
|
| BLAKE2b-256 |
0c43025d0cc8320e6f791bc6cece29ac9f3f06b189988e6aab07bd677609c7cf
|
File details
Details for the file pyarabify-2.0.0-py3-none-any.whl.
File metadata
- Download URL: pyarabify-2.0.0-py3-none-any.whl
- Upload date:
- Size: 70.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
525f2d6dbd3d3a9f62e325d3c56368240d7d15eb050d8972a3caefbf97343564
|
|
| MD5 |
c68807113d8eee509da9ef5be3903308
|
|
| BLAKE2b-256 |
272a211c0914310b524ab44f6342c6440526211cc76ea824eba0209178f551d3
|