我正在研究一個包含阿拉伯語 - 英語數據庫並允許更新此數據庫並研究詞彙表的Python程序。我幾乎完成了實現我需要的所有功能,但最重要的部分是缺少的:阿拉伯字符串的編碼。要將新詞彙附加到數據庫txt文件,將創建一個詞典,然後將其內容附加到該文件。爲了學習詞彙,txt文件的內容再次被轉換成字典,隨機單詞被打印到控制檯並且用戶被要求翻譯。現在的想法是,用戶有可能用拉丁字母寫英語單詞和阿拉伯單詞,程序將內部將僞阿拉伯字母轉換成阿拉伯字母。例如,如果用戶在詢問阿拉伯語單詞時寫入'b',我想追加'ب'。 1.在實施過程中我需要考慮大約80個標誌。有沒有在拉丁字母輸入字符串和相應的阿拉伯符號之間創建映射的方法?對我來說,最直觀的想法是寫一個if語句,但可能會超慢。 2.我無法將阿拉伯文字符串打印到控制檯。該輸入python將unicode寫入文件並將其作爲符號檢索
print('bla{}!'.format(chr(0xfe9e)))
print('bla{}!'.format(chr(int('0x'+'0627',16))))
會導致打印阿拉伯語跡象,而這不會:
print('{}'.format(chr(0xfe9e)))
我能爲了避免這個問題呢,因爲我想它由Unicode的符號序列只要?
最後一行在Python 3中適用於我。您應該在行的最右側部分搜索字符,因爲阿拉伯語是從右向左書寫的。 – ForceBru
天哪,你是對的。謝謝!第一個問題的任何建議? – hmw1001
歡迎來到StackOverflow!我建議將問題分爲兩部分:這一部分(處理打印/存儲阿拉伯文unicode字符),然後將第一部分翻譯爲阿拉伯文(拉丁文字母的音譯)並將其作爲新問題發佈。 –