TshetUinhEncoder.轉換.母與等到類 的原始碼

# -*- coding: utf-8 -*-

_五十一聲類映射表 = (
    ('方', '幫', '三'),
    ('博', '幫', None),
    ('芳', '滂', '三'),
    ('普', '滂', None),
    ('符', '並', '三'),
    ('蒲', '並', None),
    ('武', '明', '三'),
    ('莫', '明', None),
    ('都', '端', None),
    ('他', '透', None),
    ('徒', '定', None),
    ('奴', '泥', None),
    ('陟', '知', None),
    ('丑', '徹', None),
    ('直', '澄', None),
    ('女', '孃', None),
    ('子', '精', '三'),
    ('作', '精', None),
    ('七', '清', '三'),
    ('倉', '清', None),
    ('疾', '從', '三'),
    ('昨', '從', None),
    ('息', '心', '三'),
    ('蘇', '心', None),
    ('徐', '邪', None),  # 僅三等
    ('側', '莊', None),
    ('初', '初', None),
    ('士', '崇', None),
    ('所', '生', None),
    ('俟', '俟', None),  # 俟母獨立,故實為五十二個
    ('之', '章', None),
    ('昌', '昌', None),
    ('食', '船', None),
    ('式', '書', None),
    ('時', '常', None),
    ('居', '見', '三'),
    ('古', '見', None),
    ('去', '溪', '三'),
    ('苦', '溪', None),
    ('渠', '羣', None),  # 僅三等
    ('魚', '疑', '三'),
    ('五', '疑', None),
    ('於', '影', '三'),
    ('烏', '影', None),
    ('許', '曉', '三'),
    ('呼', '曉', None),
    ('胡', '匣', None),
    ('于', '云', None),
    ('以', '以', None),
    ('力', '來', '二三'),  # 來母二等字實際反切上字多為三等
    ('盧', '來', None),
    ('而', '日', None),
)

[文件] def 母與等到類(: str, : str) -> str: ''' 由母與等確定五十一聲類。 注意五十一聲類中俟母獨立,故實為五十二個。 :param 母: 聲母 :type 母: str :param 等: 等 :type 等: str Example: >>> 母與等到類('見', '二') '古' >>> 母與等到類('並', '三') '符' ''' for 聲類, 母條件, 等條件 in _五十一聲類映射表: if == 母條件 and (等條件 is None or in 等條件): return 聲類 raise ValueError(f'無法確定五十一聲類:{}{}等')