6.8 不同条件分支里应减少重合度 ============================== .. image:: http://image.iswbm.com/20200804124133.png 如下是一个简单的条件语句模型 .. code:: python if A: elif B: else: 如果 code_block_2 和 code_block_1 的代码完全一致,那么应该想办法减少代码冗余。 这边举个例子,下面这段代码中 .. code:: python def process_payment(payment): if payment.currency == 'USD': process_standard_payment(payment) elif payment.currency == 'EUR': process_standard_payment(payment) else: process_international_payment(payment) 其实更好的做法是用 in 来合并条件一和条件二 .. code:: python def process_payment(payment): if payment.currency in ('USD', 'EUR'): process_standard_payment(payment) else: process_international_payment(payment)