@CoolGaming
Начинающий программист,пишу ботов

Почему некорректно работает код?

Здравствуйте, написал вот такой код, чтобы по команде $users вызывал кол-во пользователей в сети, всего пользователей на серваке и пользователей оффлайн
def filteronlinemembers(member):
    return member.status != 'offline' and member.bot == False

@bot.command(name='users')
async def send_users(ctx):
    total = len(ctx.guild.members)

    onlinemembers = len(filter(filteronlinemembers, total))
    onlineMembersCount = len(onlinemembers)
    offlinemembers = len(total - onlineMembersCount)
    await ctx.send(f"Пользователей всего: {total}, Пользователей онлайн {onlineMembersCount}, Пользователей оффлайн {offlinemembers}")


Проблема в том, что бот ничего не выводит, решил переписать код полегче
online = 0
offline = 0
for member in ctx.guild.members: 
  if member.status == "offline": offline +=1
  else: online += 1

Но он выдает число онлайн пользователей от всех пользователей сервера и оффлайн пользователей от пользователей всего сервера. Как подправить первый код или исправить второй код?
  • Вопрос задан
  • 77 просмотров
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix
yellow
onlinemembers = len(filter(filteronlinemembers, total))

В тотал количество пользователей записано, а нужны сами пользователи
Ответ написан
Ваш ответ на вопрос

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

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