방금 discord.py의 구문을 테스트 한 결과 잘못된 것을 발견했습니다.
client
인 commands.Bot()
다음 코드 3 개 조각을 위해 :
@client.command(pass_context=True)
@commands.has_permissions(manage_roles=True)
async def add_role(mes: discord.Message, member: discord.Member, role: discord.Role):
print(mes)
# input: ?add_role someone Tester
# output: <discord.ext.commands.context.Context object at 0x03B2EF30>
@client.command(pass_context=True)
@commands.has_permissions(administrator=True)
async def exit(mes: discord.ext.commands.Context):
print(mes)
# input: ?exit
# output: <discord.ext.commands.context.Context object at 0x03B2EF50>
@client.command(pass_context=True)
async def ask(mes: discord.message.Message):
print(mes)
# input: ?ask
# output: <discord.ext.commands.context.Context object at 0x03B2ED10>
왜 모든 결과가 같지만 <discord.ext.commands.context.Context object>
달라지는가 mes
?
Context
객체는 항상 명령에 전달 된 첫 번째 매개 변수입니다. 명령 확장에 대한 문서를
참조하십시오 .
이제 pass_context
더 이상 지원되지 않는 discord.py, v0.16 버전의 구문 인에 관계없이 사실 입니다. 참조 v1로 마이그레이션하기위한 가이드를 , 특히 컨텍스트 변경 섹션 .
참고는 Context
컨버터는 또한 많은 이해가되지 않습니다 및 discord.py에 의해 정의되어 있지 않습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다