How to input Japanese text in Python? | Sololearn: Learn to code for FREE!
Новый курс! Каждый программист должен знать генеративный ИИ!
Попробуйте бесплатный урок
+ 1

How to input Japanese text in Python?

When operating Windows or a smartphone, there are special keyboard helps to enter Japanese, and they work well in typical environments like browsers or text editors. However, in Python console-applications, strange stuff happens... On windows console I can't use Japanese at all. On QPython3 I can input Japanese, but as soon as I try to backspace away a letter, the whole app crashes. On Pydroid I can enter Kana, but Kanji gets ignored completely. Does anybody know the reason for these problems and a (preferably quick and easy) fix? (Word of caution: This is NOT about processing Japanese when it's already stored in some string or whatever (unicode encoding and so on) - it is about getting the data there in the first place!)

1st Oct 2018, 2:38 PM
HonFu
HonFu - avatar
7 ответов
+ 1
This is a 'Schuss ins Blaue', since I recently saw you write some Chinese here on Sololearn, but: Do you maybe have an idea, Anna?
2nd Oct 2018, 2:27 PM
HonFu
HonFu - avatar
+ 1
Ich fühle mich geehrt, dass du dabei an mich denkst, aber leider habe ich keine Ahnung. Ich glaub wenn das jeweilige Programm das nicht implementiert hat, wird das ganz schwierig. Ich kann mir höchstens so halb zusammenreimen, warum QPython3 nach einem Backspace abstürzt, aber ich schätze das hilft dir auch nicht weiter 😩
2nd Oct 2018, 2:36 PM
Anna
Anna - avatar
+ 1
Ah, schade, einen Versuch war's mir wert. ;-) Ich schätze, das muss so ein Runtime-OS-Dingsi sein, da das (unbefriedigende) Ergebnis je nach "Schreibfläche" anders ausfällt. Ich hab mich schon gefragt, ob ich allein aus dem Grund, dass es zufällig dort funktionieren könnte, mich mal mit Kivy oder so auseinandersetze ...
2nd Oct 2018, 2:56 PM
HonFu
HonFu - avatar
+ 1
Ich habe gerade mal ausprobiert, ob ich im Ubuntu-Terminal auf chinesisch schreiben kann. Funktioniert problemlos. Was sagt denn sys.getdefaultencoding() unter Windows? Vielleicht kann man mit setdefaultencoding('utf-8') was machen, aber vielleicht zerlegt man damit auch sein System 🤔
2nd Oct 2018, 3:10 PM
Anna
Anna - avatar
+ 1
Mit Encodings hab ich schon herumgespielt, aber das ändert nix. Letztendlich geht's dabei ja auch um die Daten, die schon im System, also um die Darstellung und Speicherung der Zeichen. Und das klappt, z. B. wenn ich sie aus einem Textfile lade oder einen Unicode abrufe, problemlos. Das Problem scheint allein der Vorgang zu sein, bei dem man provisorisches Kana eingibt, in Kanji umwandelt, und dann - o Schreck - das Ergebnis auch noch bearbeiten möchte. Der Dialog mit dieser Schreibhilfe scheint also das eigentliche Problem zu sein ... die Windowskonsole akzeptiert sie gar nicht, Pydroid fasst die Kanji vorsichtshalber nicht an und QPython klappt beim Versuch zusammen...
2nd Oct 2018, 3:25 PM
HonFu
HonFu - avatar
+ 1
Hm, dann bin ich leider überfragt ☹️
2nd Oct 2018, 3:44 PM
Anna
Anna - avatar
+ 1
Hm, ich glaub, ich nutze mal die Feedback-Möglichkeit und schaue, ob bei QPython/Pydroid gerade ein Optimierungswille herrscht. ;-)
2nd Oct 2018, 3:46 PM
HonFu
HonFu - avatar