首页 > 解决方案 > Discord.py 成员状态

问题描述

我怎样才能替换不止一件事,例如我做了 .replace("dnd", "Do Not Disturb") 但我怎样才能对“在线”、“离线”和“空闲”做同样的事情,这样我就可以放表情符号了在他们中。

embed.add_field(name="**•Status•**", value=str(member.status).replace("dnd", "Do Not Disturb") , inline=True)

标签: pythondiscorddiscord.py

解决方案


您可以replace像其他答案所示那样简单地链接方法,尽管我认为这是一种丑陋的做法。

您可以有一个将状态映射到实际名称的字典,然后只需使用状态获取值:

status_dict = {
    "online": "Online",
    "offline": "Offline", 
    "idle": "Idle",
    "dnd": "Do Not Disturb",
    "invisible": "Invisible"
} # Change the values accordingly

status = status_dict[str(member.status)]
embed.add_field(name="**Status**", value=status)

推荐阅读