if文で分岐するときにorの条件が多いとソースコードが見づらくなる。
そのため、以下のように書くと文字が少なくなり、楽になる。
# !/user/bin/env python def main(): list = [i for i in range(10)] print(list) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] for i in list: if i == 1: print('a:{}'.format(i)) elif i == 2: print('a:{}'.format(i)) elif i == 3: print('a:{}'.format(i)) else: print(i) """ 0 a:1 a:2 a:3 4 5 6 7 8 9 """ for i in list: if i in {1, 2, 3}: print('a:{}'.format(i)) else: print(i) """ 0 a:1 a:2 a:3 4 5 6 7 8 9 """ if __name__ == '__main__': main()
あまり使う機会はないかもしれないけど、便利であると思う。
追記
switch文がないのは、あきらめるしかない。
ifとelifを使うしかない・・・
ダックタイピングを上手く使えばきれいになるのかな。
2022/11追記
いまだと、match文があるからこれを使うのが良いかも
https://qiita.com/ksato9700/items/3ce4c68c0d713874b693