Как из картежа вынести элемент? Discord Bot

У меня есть логи изменения ролей в дискорде, но при изменении разрешений помимо самих разрешений появляется их bool состояние(True или False), мне нужно получить название самого разрешения, без bool. При этом при добавлении разрешений, мне нужно получить только тот элемент, где bool состояние равно True, а при убирании роли мне нужно получить элемент, где bool равно False. Скриншот, того, что у меня получается внизу, но то, что мне нужно описал выше.

@bot.event
async def on_guild_role_update(before, after):
    if before.name == after.name or before.color == after.color or before.permissions == after.permissions:
        return

    now = datetime.now()

    embed = discord.Embed(
        title='Роль была изменена!',
        color=0xfaa41b
    )
    embed.set_footer(text=f'ID: {before.id} • Сегодня, в {now.hour}:{now.minute}')
    if before.name != after.name:
        embed.add_field(name='Назвагие:', value=f'{before.name} => {after.name}', inline=False)

    if before.color != after.color:
        embed.add_field(name='Цвет:', value=f'{before.color} => {after.color}', inline=False)

    if before.permissions != after.permissions:
        async for event in before.guild.audit_logs(limit=None, action=discord.AuditLogAction.role_update):
            if getattr(event.target, 'id', None) == before.id:
                continue
        removed_perm = []
        added_perm = []
        for i in before.permissions:
            if i in before.permissions and i not in after.permissions:
                removed_perm.append(i)

        for k in after.permissions:
            if k in after.permissions and k not in before.permissions:
                added_perm.append(k)

        embed.add_field(name='Добавленные права:', value=added_perm, inline=True)
        embed.add_field(name='Убранные права:', value=removed_perm, inline=True)

    embed.add_field(name='Модератор:', value=f'{event.user}({event.user.mention})', inline=False)

    await bot.get_channel(911633362949648464).send(embed=embed)

embed с логом


Ответы (1 шт):

Автор решения: CrazyElf

Так то ну берёте и проверяете. Вместо:

removed_perm.append(i)

Делаете проверку и добавляете только нужное:

name,flag = i
if not flag:
    removed_perm.append(name)

Ну, если я правильно понял логику.

А, и при выводе "склеивать" список:

embed.add_field(name='Убранные права:', value=', '.join(removed_perm), inline=True)

Со вторым списком аналогично, но там if flag что ли, ну сами разберётесь, когда True ловить, а когда `False.

→ Ссылка