بسم الله الرحمن الرحيم
السلام عليكم
أردت أن اصنع برنامج قاموس (ترجمة) بالبايثون رأيت الكثير من القواميس المصنوعة بالفيجوال بيسك ولكنها كانت بطيئة جداً
وانا نظرة أملي فى بايثون كبيرة من حيث السرعة وصنع البرامج العملاقة
أرجو الافادة
والسلام عليكم
بسم الله الرحمن الرحيم
السلام عليكم
أردت أن اصنع برنامج قاموس (ترجمة) بالبايثون رأيت الكثير من القواميس المصنوعة بالفيجوال بيسك ولكنها كانت بطيئة جداً
وانا نظرة أملي فى بايثون كبيرة من حيث السرعة وصنع البرامج العملاقة
أرجو الافادة
والسلام عليكم
صنع قاموس ليس صعبا لكنه متعب جدا أما بالنسبة للبطأ في التجرمة فذلك نتيجة البحث
في البايثون هيكل من هياكل البيانات يسمي القاموس. فلنفترض أن قاموسنا يترجم من الفرنسية للإنجليزية
dic={'to go':'aller','i':'je','have':'dois'}هذا قاموس بسيط :rolleyes:
بعد ذلك يتبقي برمجة دلة البحث و هي التي تبحث عن الكلمة من النص في القاموس و طبعا نميز الكلمات بالفراغات الموجودة بالسلسلة النصية
مثلا لدينا
i have to go به ثلاث فراغات معناه هذه السلسلة النصية تحتوي علي أربعة كلمات (عدد الفراغات + 1)
و بعدها نبحث عن الكلمة في القاموس و نطبع المقابل لها و هكذا
و هذا هو التطبيق مجرد تطبيق بسيط لتوضيح الفكرة فقط لا غير
dic={'togo':'aller','i':'je','have':'dois'}s='i have togo 'd=''p=[]l=0i=0c=len(s)-1while i<=c: if s==' ': p.append(s[l:i]) l=i+1 i+=1 continue i+=1i=0print pc=len(p)-1while i<=c: print dic[p] i+=1بالتوفيق
تم تعديل هذه المشاركة بواسطة kenham في 26 يناير 2014 في 06:42
مشكور جداً أخي لكن الايمكن أضافة الكلمات الى قاعدة بيانات
أريد مثال لاستخدام ذلك فى قاعدة بيانات
وشكراً
ليس معني أنك تريد برمجة قاموس , ان تستخدم هيكل البيانات dict :) ..... اليس كذلك ؟
الحل : هذه قواميس متعددة علي شكل قواعد بيانات sqlite
http://sourceforge.net/projects/qamoos/files/qamoosDBs/
كل ملف عبارة عن جدول من عمودين ar,en باستخدام بايثون وsqlite يمكنك بناء القاموس اللذي تريد
عامر الشابي كتب:مرهق جدا أنا تقوم بكتابة هيكلة dict اليس كذلك؟
قاعدة البيانات جائت لتحل مثل هذه المشاكل
صحيح أخي :)
ممكن دروس بايثون للتعامل مع قواعد البيانات
مشكور أخي جاري التجريب
اقتباس
مرهق جدا أنا تقوم بكتابة هيكلة dict اليس كذلك؟
قاعدة البيانات جائت لتحل مثل هذه المشاكل
بالتأكيد
هذه ليست إلا فكرة مبدإية لمساعدة المبتدئين باللغة
اقتباس
ليس معني أنك تريد برمجة قاموس , ان تستخدم هيكل البيانات dict :) ..... اليس كذلك ؟
لكن لماذا صمم هذا النوع من هياكل البيانات أصلا
صمم ليستعمل كقاموس أليس كذلك ;) هناك فرق بين قاموس و مترجم
لكن طبعا لا يستعمل بشكل موسع
إن كان المشروع صغيرا فيفضل استخدام القاموس.