首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python认为json是一个局部变量

Python认为json是一个局部变量
EN

Stack Overflow用户
提问于 2018-07-06 03:59:33
回答 2查看 3.6K关注 0票数 0

此函数用于操作存储为文件的字典中的值。我得到了

“赋值前引用的局部变量'json‘”

在第四行,"dictio =json.loads()“。

我已经导入了json,实际上下面的函数运行得很好,执行几乎相同的任务。与后面的函数不同,这个函数还抛出了一个空队列错误,尽管我并没有故意请求多线程。

代码语言:javascript
复制
def updateTally(lefty):                                          #Tally records responses to each question
    global num, total, thisQ 
    rf = open("20QTally.json", "r")
    dictio = json.loads(rf.read())
    rf.close()

    dictio[str(0)] += 1
    total = dictio[str(0)]
    if lefty == 1:
        dictio[str(num)] +=1
    thisQ = dictio[str(num)]

    json = json.dumps(dictio)
    wf = open("20QTally.json", "w")
    wf.write(json)
    wf.close()

def record_score( score ):#打开、读取、写入和关闭分数文件,20QScores.txt (文件名)全局总得分=open(文件名,"r") #记录和报告个人的响应sf = json.loads(scoref.read()) # Json帮助字符串和整数写入和读取文件。key =str(分数)如果密钥在sf中: sfkey += 1否则: sfkey =1#,依此类推。

EN

回答 2

Stack Overflow用户

发布于 2018-07-06 04:09:05

您正尝试在此处为json赋值

代码语言:javascript
复制
json = json.dumps(dictio)

更改变量名

票数 4
EN

Stack Overflow用户

发布于 2018-07-06 04:17:04

这是因为您正在跟踪使用相同名称声明变量的json模块。不要这样做,获取一些在作用域中唯一的名称。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51199002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档