В discord.py ты можешь просто
сравнивать роли. Но ты пытаешься сделать это вручную...
Если заглянуть в
исходники либы, то можно увидеть, что там проверяется свойство
position
. Причем вроде как меньший
position
означает меньшие привилегии, с поправкой на то что роль
@everyone
меньше всех.
Тогда решением твоей задачи будет:
1. Определить список ролей твоего токена на рассматриваемом сервере.
2. Определить наибольший position среди этих ролей.
3. Получить список всех ролей на рассматриваемом сервере.
4. Отсеять роли, у которых position больше твоего наибольшего.
Если я напутал и меньший position означает большую роль, то логика примерно та же самое, только меняешь больше на меньше.