( ᐛ) ばなな宣言解除 @sasanquaneuf@qiitadon.com
フォロー

【ゆるぼ】「こういうのを綺麗に書きたい」

…というのは、qrunchに書いてみるのかな。

equivalent_group = [
['dog', 'いぬ', '犬', 'わんちゃん'],
['cat', 'ねこ', '猫', 'パンダの熊抜き'],
]

def in_which_equivalent_group(target):
r = [e for e in equivalent_group if target in e]
return r[0] if r else None

in_which_equivalent_group('パンダの熊抜き')
# ['cat', 'ねこ', '猫', 'パンダの熊抜き']

戻り値は必ずしもリストである必要はなく、その同値類を表現する何かでよいけど、要はいくつかの同値類に集合を分けた時どれに居るかを返す、というのが短く綺麗でわかりやすいコード。
なんでこういうのが欲しいかというと、csvヘッダの多言語対応とかで「その言葉が表現するもの」の同値類をあてたい。
うーん。

· Web · 3 · 2