Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 值计数代码在放入discord命令时出现异常_Python_Python 3.x_Google Sheets_Discord_Discord.py - Fatal编程技术网

Python 值计数代码在放入discord命令时出现异常

Python 值计数代码在放入discord命令时出现异常,python,python-3.x,google-sheets,discord,discord.py,Python,Python 3.x,Google Sheets,Discord,Discord.py,我只是对我的机器人进行了编码,基本上它计算了过去七天中每个用户的每日帮会XP,并将其打印在一个列表中到谷歌表单中。有一个问题,列表中的帮会XP值在手动相加时是错误的,这是API JSON中所有七天的帮会XP 它打印的名称是正确的,但值是错误的,我不能确切地说出它们是怎样的。仅当以下代码在discord命令中运行时,才会发生这种情况,但例如,在PyCharm中运行时,代码功能正常 我不知道发生了什么事。我的bot.py在Ubuntu 18.04中与tmux一起运行。我知道这不是GoogleShee

我只是对我的机器人进行了编码,基本上它计算了过去七天中每个用户的每日帮会XP,并将其打印在一个列表中到谷歌表单中。有一个问题,列表中的帮会XP值在手动相加时是错误的,这是API JSON中所有七天的帮会XP

它打印的名称是正确的,但值是错误的,我不能确切地说出它们是怎样的。仅当以下代码在discord命令中运行时,才会发生这种情况,但例如,在PyCharm中运行时,代码功能正常

我不知道发生了什么事。我的bot.py在Ubuntu 18.04中与tmux一起运行。我知道这不是GoogleSheets,因为我在使用GoogleSheets之前打印了列表,而且它也不是API

我需要重新排列我的代码吗?有循环的东西吗

for count in range(len(data['guild']['members'])): # For every guild member:
    res = requests.get("https://playerdb.co/api/player/minecraft/" + data['guild']['members'][count]['uuid']) # Response from server

    if res.status_code != 200: # If it wasn't a success, continue the loop and print a message
        ctx.author.send("Error 1: Invaild name from player database API!")
        continue

    name = res.json()['data']['player']['username'] # We know it was successful if we got to this point, so it's safe to try and get data from our response
    names.append(name)

# Members' GXP
    xp = data['guild']['members'][count]['expHistory']
    xp = sum(xp.values())
    xpHist.append(xp)

# Weekly Total
wTotal = sum(xpHist)
print(xpHist)

JSON:

使用它将为您提供索引和元素本身。使用字典更容易将xp(值)与名称(键)关联起来

scores={}
#对于每个公会成员:
对于计数,枚举中的成员(数据['guild']['members']):
res=requests.get(“https://playerdb.co/api/player/minecraft/" +
数据['guild']['members'][count]['uuid'])#来自服务器的响应
如果资源状态\u代码!=200:#如果没有成功,请继续循环并打印消息
ctx.author.send(“错误1:来自播放器数据库API的Invaild名称!”)
持续
#我们知道,如果我们达到这一点,它是成功的,因此,尝试从我们的响应中获取数据是安全的
name=res.json()['data']['player']['username']
#成员国的GXP
xp=数据['guild']['members'][count]['expHistory']
#使用dict记录带有名称的CROE
分数[名称]=总和(xp.values())
#每周总数
wTotal=总和(scores.values())
打印(总)
打印(分数)

共享JSON文件/结构,以便我们知道从中提取什么it@Poojan给了JSON链接这是你想要的吗?名称:weeklyTotalXP输出链接:谢谢!不过,我还有两个问题,如何在开始时插入三个空(无)键/值。你知道我如何在GoogleSheetsAPI中实现这一点吗?