PyCon APAC 2025

[Talk] How to learn Japanese with Python
2025-03-01 , F-AVR

Japanese is reportedly one of the most difficult languages for English speakers to learn.
(FSI language difficulty: https://www.fsi-language-courses.org/blog/fsi-language-difficulty/)
There are many reasons for this, including the fact that there are three types of characters: hiragana, katakana, and kanji, and that words are not separated by spaces.
In this talk, I will first introduce what makes Japanese different from many European languages.
Then I will show how Python and natural language processing libraries can be used to support Japanese language learning.


  • Motivation and background (2 min)
  • Goal of this talk
  • Self introduction (1 min)
  • Explan difficult points in Japanese(5 min)
  • 3 types of characters: Hiragana, Katakana, and Kanji
  • No Spaces between Words
  • Multiple Readings of Kanji
    • Reading changes depending on the combination of Kanji characters
    • The same sequence of kanji can be used in different contexts
  • <ruby> HTML Tag (1 min)
  • ruby-tag represents small annotations
  • Hiragana, Katakana and Romaji(3 min)
  • Romanization of Japanese (Romaji)
  • Convert hiragana and katakana to Romaji using jaconv
  • No Spaces between Words(5 min)
  • Can you split "すもももももももものうち"?
    • すもも / も / もも / も / もも / の / うち
  • Japanese Morphological Analyzer library
  • Word segmentation using SudachiPy
  • Multiple Readings of Kanji(5 min)
  • Kanji is difficult to read
    • Two types of readings, Japanese-style reading(Kun yomi) and Chinese-style reading(On yomi)
    • Multiple Readings of Kanji idioms
    • Special readings of Kanji idioms
  • Get Reading of Kanji
    • Use SudachiPy to get the reading of a Kanji
  • Can read but Cannnot Pronouce (3 min)
  • Readings and Pronounciations are slightly different in Japanese
  • Using Amazon Polly to perform text to speech
  • Demo (3 min)
  • Run the sample application made by Streamlit
  • Summary (1 min)

Audience Level:

Beginner

Category:

Personal and Professional Development

Takanori is a Chairperson of PyCon JP Association.
Worked as a PyCon JP organizer since PyCon mini JP in January 2011 and has been the Co-Chair of PyCon JP 2024.
He is also a director of BeProud Inc., and his title is "Python Climber".
Currently he teaches Python to beginners as a lecturer at Python Boot Camp all over Japan.
In addition, he published several Python books.

He plays trumpet, climbs boulder, loves Lego, ferrets and craft beer.