В вашем коде указано:
submission = reddit.subreddit("memes").hot(limit=1)
await channel.send(submission.url)
Здесь вы назначаете список из одного сообщения для submission
. Поскольку листинг является повторяющимся (что-то вроде списка), который содержит одно представление, а не само представление. В отличие от списка, вы не можете использовать индекс для доступа к определенному элементу c, но есть другие способы получить его. Один из способов подать заявку -
for submission in reddit.subreddit("memes").hot(limit=1):
await channel.send(submission.url)
. Это позволяет вам изменить лимит и при желании отправить больше сообщений. Или вы можете использовать next()
, чтобы получить следующий (и единственный) элемент из списка сообщений:
submission = next(reddit.subreddit("memes").hot(limit=1))
await channel.send(submission.url)
Это всегда будет отправлять только одно сообщение, даже если вы измените параметр limit
.