Permalink
Fetching contributors…
Cannot retrieve contributors at this time
108 lines (72 sloc) 5.55 KB

Утилита для фонетической транскрипции китайских иероглифов (Python версия)

Build Coverage PyPI version

Выполняет преобразование китайских иероглифов в пиньин. Можно использовать для фонетики китайских иероглифов, сортировки, просмотра информации.

Основано на hotoo/pinyin проекте.

Особенности

  • Весьма точная транскрипция, основанная на интеллектуальном сопоставлении словосочетаний
  • Поддержка иероглифов в несколькими вариантами произношения
  • Поддержка простой и полной формы иероглифов, фонетическая поддержка
  • Поддержка различных форм пиньина/фонетических стилей

Установка

$ pip install pypinyin

Документация

Подробную документацию смотрите здесь:http://pypinyin.rtfd.io/

Примеры использования

Python 3(в Python 2 строку '中心' достаточно заменить на u'中心'):

>>> from pypinyin import pinyin, lazy_pinyin
>>> import pypinyin
>>> pinyin('中心')
[['zhōng'], ['xīn']]
>>> pinyin('中心', heteronym=True)  # Задействовать режим выдачи иероглифов с несколькими вариантами произношения (омографы)
[['zhōng', 'zhòng'], ['xīn']]
>>> pinyin('中心', style=pypinyin.FIRST_LETTER)  # Настройка фонетического стиля
[['z'], ['x']]
>>> pinyin('中心', style=pypinyin.TONE2, heteronym=True)
[['zho1ng', 'zho4ng'], ['xi1n']]
>>> pinyin('中心', style=pypinyin.BOPOMOFO)  # Фонетический стиль - чжуи́нь или бопомофо
[['ㄓㄨㄥ'], ['ㄒㄧㄣ']]
>>> pinyin('中心', style=pypinyin.CYRILLIC)  # Фонетический стиль - запись кириллицей по системе Палладия
[['чжун1'], ['синь1']]
>>> lazy_pinyin('中心')  # Без учета омографов
['zhong', 'xin']

Через командную строку:

$ pypinyin 音乐
yīn yuè
$ pypinyin -h

FAQ

Почему y, w, yu не имеют инициалей?

Стиль инициалей (INITIALS) следующих “雨”、“我”、“圆” и других иероглифов возвращает символ пустой строки, так как согласно "Метод фонетической транскрипции китайских иероглифов" , символы y, w, ü (yu) не являются инициалями, при этом к некоторым специальным гласным без согласных букв,добавляется y или w,а также ü согласно специальным правилам —— @hotoo

Если вы заметили, что это приносит вам трудности, то пожалуйста повнимательней отнеситесь к некоторым иероглифам без инициалей (например “啊”、“饿”、“按”、“昂” и т.д.). Тогда вам возможно потребуется стиль выдачи инициалей (FIRST_LETTER). —— @hotoo

Для справки: hotoo/pinyin#57, #22, #27, #44

Related Projects

  • hotoo/pinyin: Утилита для пиньин конвертации китайских иероглифов Node.js/JavaScript версия.
  • mozillazg/go-pinyin: Утилита для пиньин конвертации китайских иероглифов Go версия.
  • mozillazg/rust-pinyin: Утилита для пиньин конвертации китайских иероглифов Rust версия.