I am new to Python and want to separate proverbs of multiple languages in python (for each language a separate file of proverbs will be created). My corpus of proverbs of four different languages has following structure:
1- A bad workman quarrels with his tools. p A bad workman always blames his tools. p A bad shearer never had a good sickle. اردو: ناچ نہ جانے، آنگن ٹیڑھا۔ فارسی: بہ عروس گفتند: برقص، گفت: اتاق کج است۔ عروس نمی توانست برقصد، می گفت: اتاق کج است․ عربی: حجۃ الرقاصۃ انّ الارض مائلۃ․ اللی ما تعرف ترقص تقول: الارض عوجہ․ الرّقاصۃ الغشیمۃ بتحجّج بقشۃ الحصیرۃ․
2- A bird in hand is worth two in the bush. p Better an egg today than a hen tomorrow. اردو: نو نقد نہ تیرہ ادھار۔ موئے شیر سے جیتی بلّی بھلی۔ فارسی: گنجشک در دست بہ از بازی در ہوا۔ سرکہ (سیلی) نقد بہ از حلوای نسیہ۔ شلغم پختہ بِہ از نقرۂ خام۔ گنجشک نقد بہ از طاووس نسیہ۔ گنجشک بدست بِہ کہ بازِ پرندہ۔ نقد موجود بِہ کہ نسیۂ موعود۔ عربی: عصفور في الید خیر من عشرۃ في الہوا․ عصفور في الید خیر من الف کرکی في الجو․ بیضۃ الیوم خیرٌ من دجاجۃ الغد․ شوال عین یغلب الضمار․ النفس مولعۃ بخیر العاجل․ عصفور بالید و لا عشر علی الشجرۃ․
3- A bird is known by its note and a man by his talk. اردو: انسان اپنے بول سے پہچانا جاتا ہے۔ فارسی: این زبان پردہ است بر درگاہ جان ؍ آدمی مخفی است در زیر زبان۔ (مولوی) پستۂ بی مغز گر لب واکند رسوا شود۔ ابلہ را در سخن توان دانست۔ عربی: المرء مخبوء تحت لسانہ․
4- A blind man may sometime catch (hit) the hare. (crow, mark) اردو: کبھی اندھے کے ہاتھ بھی بٹیر لگ جاتی ہے۔ فارسی: گاہ باشد کہ کودکی نادان ؍ بہ غلط بر ہدف زند تیری۔ (سعدی) عربی: ربّ رمیۃ من غیر رام․
5- A broken friendship may be soldered, but it never be sound. اردو: جا نہیں سکتا کبھی شیشے میں بال آیا ہوا۔ فارسی: چو رشتہ گسست می توان بست ؍ امّا گرہیش در میان است․ (امیر خسرو) عربی: مثل القزاز، مَنَی انشعر ما ببنجیر․
I am implementing it without Unicode and reading line by line if my line number meet the specified criteria the line will be written to relevant proverb file. My code is given below:
file = open(“c:/test/convert.txt”, “r”)
index=1
for line in file:
if len(line.strip()) < 5:
continue
elif index%2 == 0 and index%4 !=0:
print "Urdu line"
with open('c:/test/urdu.txt', 'a') as fu:
fu.write(line)
index+=1
elif index%3 == 0:
print "Persian line"
with open('c:/test/persian.txt', 'a') as fp:
fp.write(line)
index+=1
elif index%4 == 0:
print "Arabic line"
with open('c:/test/arabic.txt', 'a') as fa:
fa.write(line)
index+=1
else:
print "English line"
with open('c:/test/english.txt', 'a') as fe:
fe.write(line)
index+=1
I the code there is some logical error. I think I am missing break or continue statement due to which I am not getting desired output. Multiple files are created but different languages are written into the same file. Please help me to correct the error.
I am dealing with the same problem in c++...can you tell why are you using index here?.i was trying to use Unicode to obtain the number of delimiters in the Urdu text
RépondreSupprimer