我要执行的操作是使用此特定命令,但是当我尝试使成员中带有空格的成员静音时,例如#!/usr/bin/env python
import os
def isActive(daemon):
command = "systemctl is-active " + daemon + " > tmp"
os.system(command)
with open('tmp') as tmp:
tmp = tmp.read()
if "active" in tmp:
os.remove('tmp')
return 1
return 0
sshd = "sshd"
print(isActive(sshd))
,它只是不起作用
t!mute sweaty dolphin dude 1 reason...
我也尝试过
@client.command()
@has_permissions(kick_members=True)
@commands.has_role('Staff')
async def mute(ctx,member:discord.Member,mute_time:int, *,reason:str):
#My code....
它运作良好,但是我真正需要的是首先要使用的成员名称,然后是时间和结尾原因。
答案 0 :(得分:1)
discord.Message
具有一个名为mentions
的属性,该属性是给定消息中提到的成员的列表。
因此,您可以做的是从函数的参数中删除与该成员有关的部分,即使其成为async def mute(ctx, mute_time: int, *, reason: str)
,并在函数的代码中声明muted_user = ctx.message.mentions[0]
。只要您确保在使用Mutate命令时提及用户,此方法便会起作用。您甚至可以将其扩展为一次使多个人静音(即消息中所有提及的内容)。
答案 1 :(得分:1)
在编写带有空格的成员姓名时,请在其周围加上引号,例如:
Predicted: 0.5030623078346252 Label: 1.0
Predicted: 0.5030624270439148 Label: 0.0
Predicted: 0.5030624270439148 Label: 1.0
Predicted: 0.5030625462532043 Label: 0.0
Predicted: 0.5030625462532043 Label: 1.0
Predicted: 0.5030626654624939 Label: 0.0
Predicted: 0.5030626058578491 Label: 1.0
Predicted: 0.5030627250671387 Label: 0.0
Predicted: 0.5030626654624939 Label: 1.0
Predicted: 0.5030627846717834 Label: 0.0
Predicted: 0.5030627250671387 Label: 1.0
Predicted: 0.5030627846717834 Label: 0.0
Predicted: 0.5030627250671387 Label: 1.0
Predicted: 0.5030628442764282 Label: 0.0
Predicted: 0.5030627846717834 Label: 1.0
Predicted: 0.5030628442764282 Label: 0.0
您可能想在其中添加空格的所有参数也是如此。