Python, Locales and Writing Systems
summary
Python 3 makes strings Unicode by default but lots of real problems remain: Turkish dotted versus dotless I mis-capitalizes in core code so either ship a hand translation table or use ICU for correct case folding; right-to-left rendering needs python-bidi; Arabic shaping needs python-arabic-reshaper; Japanese fullwidth/halfwidth conversion uses ja; Hangul requires NFD/NFC normalization or terminals overprint decomposed jamo; beware Unicode escape and backslash mixing that can turn escaped quotes into SQL injection — use a proper ORM and Python 3.
AI-written summary · about
chapters (6)
- 0:00Start
- 2:33Python 3 is great
- 17:13Fullwidth and halfwidth characters
- 23:52Korean text
- 30:12Security - SQL Injection
- 34:07Conclusions
related talks
33mPython's Transition to Multilingual Programming
28mMaking Acquaintances with Exotic Encodings
25mWhy len 4 and other weird things you should know about strings in Python
29mYour Name Is Invalid!
35mText Is Not Text: The History of Strings in Python
25mDecoding the Frustrations and Vulnerabilities of Modern Text Processing
44mA 🐍's guide to Unicode
38mIt Works on My Machine: Writing Python Code for Any Environment
