booleanの値によって異なる文字列を得るスニペット

条件分岐を使わずに,boolean値を得るかっこいい方法を見つけました。 Python3/Lib/test/test_unicodedata.pyより抜粋しています。

for i in range(0x10000):
    char = chr(i)
    data = [
        "01"[char.isalnum()],
        "01"[char.isalpha()],
        "01"[char.isdecimal()],
        "01"[char.isdigit()],
        "01"[char.islower()],
        "01"[char.isnumeric()],
        "01"[char.isspace()],
        "01"[char.istitle()],
        "01"[char.isupper()],
    ]
    # 以下省略...

ご覧のとおり、文字列のスライスをうまく利用していますね。 この手法を使えば、リスト内包表記もいつもより短く書けるかもしれません。