モジュールにはいくつかのcurses.ascii
便利な関数が定義されており、たとえば、どの文字が印刷可能かを認識できます ( curses.ascii.isprint(ch)
)。
ただし、使用されているロケール設定に応じて、異なる文字コードが印刷可能になる場合があります。たとえば、特定のポーランド文字があります。
>>> ord('a')
97
>>> ord('ą')
177
>>>
curses.ascii
数値がモジュールで使用されている印刷可能な文字を表しているかどうかを判断するより良い方法はありますか?
def isprint(c): return _ctoi(c) >= 32 and _ctoi(c) <= 126
これは一種のロケールフレンドリーではありません。