Python 使用discord.py使用bot命令写入文本文件

Python 使用discord.py使用bot命令写入文本文件,python,python-3.x,discord.py,discord.py-rewrite,Python,Python 3.x,Discord.py,Discord.py Rewrite,因此,基本上,我希望能够为我玩的游戏添加一名新员工,并存储积分以在游戏中排名。因此,第一个命令是创建新员工。所以说鲍勃需要被创造出来。我想说“!addcurrentemployee bob”,以便它写入文本文件,并将他的点默认为0。这就是我所拥有的,但它不起作用: @bot.command async def addcurrentemployee(ctx, username=None, points=0): desk = "G:/Python/Diamond Security Bot/"

因此,基本上,我希望能够为我玩的游戏添加一名新员工,并存储积分以在游戏中排名。因此,第一个命令是创建新员工。所以说鲍勃需要被创造出来。我想说“!addcurrentemployee bob”,以便它写入文本文件,并将他的点默认为0。这就是我所拥有的,但它不起作用:

@bot.command
async def addcurrentemployee(ctx, username=None, points=0):
    desk = "G:/Python/Diamond Security Bot/"
    with open(desk + "employees.txt", "rw+") as f:
        user = str(username)
        pointamount = str(points)
        points = 0
        f.write(f'{user}, {pointamount}')
        f.close()

您是否遇到了特定的错误?这是命令吗?你尝试的输入是什么?如果没有“它不起作用”之外的更多信息或上下文,就很难确定您请求帮助的确切问题

不过,根据这段代码,
将是一个整数,当您尝试将字符串与之串联时,您将得到一个
TypeError
。这也适用于
用户名
,如果未指定用户名,用户名将为
None
。你应该调查一下

您也可以考虑为文件使用上下文管理器,例如


将open(desk+“employees1.txt”、“w”)改为f:

将open(desk+“employees.txt”、“rw+”)改为f:,并再次设置user=str(username)和pointamount=str(points),您需要提供比“仍然不起作用”更多的信息。盲目地猜测你的问题是什么来帮助你是一种空洞的方法。我可以建议你使用书架来实现这一壮举吗?每个员工都将在搁置词典中,并可根据需要进行更新。