contrib

V2UMixin

class pypinyin.contrib.uv.V2UMixin[源代码]

无声调相关拼音风格下的结果使用 ü 代替原来的 v

使用方法:

from pypinyin import lazy_pinyin, Style
from pypinyin.contrib.uv import V2UMixin
from pypinyin.converter import DefaultConverter
from pypinyin.core import Pinyin

# 原来的结果中会使用 ``v`` 表示 ``ü``
print(lazy_pinyin('战略'))
# 输出:['zhan', 'lve']


class MyConverter(V2UMixin, DefaultConverter):
    pass

my_pinyin = Pinyin(MyConverter())
pinyin = my_pinyin.pinyin
lazy_pinyin = my_pinyin.lazy_pinyin

#  新的结果中使用 ``ü`` 代替原来的 ``v``
print(lazy_pinyin('战略'))
# 输出: ['zhan', 'lüe']

print(pinyin('战略', style=Style.NORMAL))
# 输出:[['zhan'], ['lüe']]

NeutralToneWith5Mixin

class pypinyin.contrib.neutral_tone.NeutralToneWith5Mixin[源代码]

声调使用数字表示的相关拼音风格下的结果使用 5 标识轻声。

使用方法:

from pypinyin import lazy_pinyin, Style
from pypinyin.contrib.neutral_tone import NeutralToneWith5Mixin
from pypinyin.converter import DefaultConverter
from pypinyin.core import Pinyin

# 原来的结果中不会标识轻声
print(lazy_pinyin('好了', style=Style.TONE2))
# 输出: ['ha3o', 'le']


class MyConverter(NeutralToneWith5Mixin, DefaultConverter):
    pass

my_pinyin = Pinyin(MyConverter())
pinyin = my_pinyin.pinyin
lazy_pinyin = my_pinyin.lazy_pinyin

#  新的结果中使用 ``5`` 标识轻声
print(lazy_pinyin('好了', style=Style.TONE2))
# 输出: ['ha3o', 'le5']

print(pinyin('好了', style=Style.TONE2))
# 输出:[['ha3o'], ['le5']]