@beduin01

Как упростить код заменяющий значения в словаре?

Как можно упростить следующий код?

if r['opcode'] == 1:
    r['opcode'] = str(r['opcode']).replace('1', 'Оплата')
if r['opcode'] == 2:
    r['opcode'] = str(r['opcode']).replace('2', 'Возврат')
if r['opcode'] == 3:
    r['opcode'] = str(r['opcode']).replace('3', 'Рекуррентное списание')
if r['opcode'] == 4:
    r['opcode'] = str(r['opcode']).replace('4', 'Блокировка')
  • Вопрос задан
  • 143 просмотра
Пригласить эксперта
Ответы на вопрос 3
@id2669099
d = {
    1: 'Оплата',
    2: 'Возврат',
    3: 'Рекуррентное списание',
    4: 'Блокировка',
}

r['opcode'] = d[r['opcode']]
Ответ написан
Комментировать
LaRN
@LaRN
Senior Developer
Чтобы поменять значение в словаре, можно просто:
if r['opcode'] == 1:
r['opcode'] = 'Оплата'
Ответ написан
@Stqs
senior software developer
r['opcode'] = ['Оплата', 'Возврат', 'Рекуррентное списание', 'Блокировка'][r['opcode'] - 1]
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы