|
|
漢字基因字典
漢字基因字典是朱邦復先生編修的字典.
字典內容多取自康熙字典, 但加入了漢字基因的概念:
每個單字以其基因字首字身加以解釋.
為學習 "漢字" 的好材料.
本模組作為示範用途, 僅供查詢單字, 並不涉及朱老漢字基因的諸種妙用.
#--BIG5-- (此行為暗號, 向中蟒表明本文件用大五編碼)
從 sys 載入 modules
從 os.path 載入 dirname, join
基因字典 = {}
路 = dirname(modules[__名稱__].__檔案__)
取 文件 自 [ 'A1', 'B1', 'C1', 'D1', 'E1', 'F1', 'G1', 'H1', 'I1', 'J1',
'K1', 'L1', 'M1', 'N1', 'O1', 'P1', 'Q1', 'R1', 'S1', 'T1',
'U1', 'V1', 'W1', 'X1', 'Y1' ]:
全文 = 打開(join(路,文件+'.TXT')).讀入().強設編碼('大五')
全文 = 全文.替換('\r\n','\n')
條列 = 全文.分割('\n@')
取 條 自 條列:
目 = 條[2:4]
基因字典[目] = 條
寫 """共得 %i 條""".強設編碼("大五")%(長度(基因字典))
刪除 全文, 目, 條, 條列, dirname, join, modules, 文件
定義 查(字):
如 長度(字) != 2:
寫 """只能查詢單字""".強設編碼("大五")
傳回 空
如 字.字串編碼() == '國標':
字 = 字.國標變大五()
如 基因字典.有(字):
傳回 基因字典[字]
否則:
傳回 """字典中無此字\n""".強設編碼("大五")
定義 問(字):
寫 查(字)
|
基因字典的內文如下:
@【日】 𦤎日 ㄖˋ Ryhˋ
象形-甲骨文
着太陽。
着: 時日:太陽出沒一次為一日,分為二十四時。
落日:下落中的太陽。
日暉:日光影響下,人的感受。
日光:日發出強烈光線,人得以見。
日圭:古代以日影計時,其計時器名日圭、日規或日晷。
日曆:記載時間之曆表。
日子:指定詞。指生活所經歷的時間。
日記:逐日記錄之文稿。
撯: 明日:主觀立場所在的下一天。
昨日:主觀立場所在的上一天。
今日:主觀立場所在的當天。
前日:主觀立場所在的上兩天。
日蝕:月繞行至日及地球之間,遮沒了太陽,謂之日蝕。
日落:日行至西天,時已晚,落於地平線下。
日出:日由東方升起,是一日之始。
@【昌】 㟸𦤎日日 ㄔㄤ Chang
字首〔日〕:着太陽。
字身〔曰〕:着張口說。
會意-甲骨文
撯說太陽之光,明亮,光大,美好。
組合字:錩淐裮倡唱菖娼昍閶猖琩鯧??
着: 昌言:人性以光大為美,是為美好之言。
撯: 昌盛:光大的程度高盛。
昌隆:光大的程度興隆。
:
:
:
:
|
該字典內容公開. 可到 http://www.cbflabs.com 下載. 如果你下載中蟒則已包括該字典.
一般來說中蟒寫的程式都很容易明白, 基本上不要解釋.
但因為這個字典在大五及國標環境下都可運作, 然而兩種編碼同時操作很容易把人弄糊塗, 所以要特別說明一下:
- 基因字典本身是大五碼的, 所以讀進來的字都是大五編碼的字.
(注意字串的編碼記號是和即譯器的目前編碼一致的, 因此和文本實際的編碼不一定吻合)
- 即譯器運行在國標編碼下的話, 用戶輸入的查詢字應為國標碼,
所以要先檢查是否需要轉換.
- 在顯示文字上,
因為中蟒在寫字串時會檢查目前編碼和字串的編碼作自動轉換, 所以不必操心.
- 那些使戶訊息如 "只能查詢單字" 什麼的就要處理一下. 用 '強設編碼("大五")' 這個函數為每個要輸出的訊息設好編即成.
- 三引號的用法在新版 2.1.3-0.4 中已取消那些使戶訊息如 "只能查詢單字" 什麼的就要處理一下.
有兩個方法, 第一個是用強設編碼的方法指定該字串的編碼,
另一個方法就是用三個引號把它們包起來, 三引號在 python 中經常用來作說明文件用,
在中蟒的情況下被三引號包住的字串會自動做編碼轉換. 這樣就省去了許多手續.
- 注意! 普通字串中一般會設為中蟒啟動時的編碼設定, 這是因為要方便處理二進位的資料流. 不問三七二十一都轉換編碼會弄的一團糟.
|
|