on_message()
函数中更改(添加)字典中的项目时,在
loop()
函数中,它只是在此处打印
"Current mps: {}"
部分代码:
import discord
import multiprocessing
import time
client = discord.Client(intents=discord.Intents.all())
mps = {}
max_mps = 10
@client.event
async def on_message(message):
if message.author != client.get_user(BOT_ID):
user_id = str(message.author.id)
if user_id in mps:
mps.update({user_id : mps[user_id] + 1})
#mps[user_id] += 1
#print(mps[user_id])
else:
mps.update({user_id : 1})
#mps[user_id] = 1
#print(mps[user_id])
#print(len(mps),"by message")
print(mps)
def loop():
while True:
print("Current mps:", mps)
print(len(mps),"by while")
if len(mps):
print("true")
for id,mpss in mps.items():
print(id,mpss)
if mpss > 0:
mpss -= 1
print(mpss)
time.sleep(1)
d = multiprocessing.Process(target=detect)
l = multiprocessing.Process(target=loop)
if __name__ == "__main__":
d.start()
l.start()
client.run("TOKEN")
我尝试用 chatgpt 修复它,我就在这里
酒保 我使用线程而不是多处理 再次非常感谢酒保