声明了Python变量,但仍然给出错误

想过

我想将请求中的数据分配给在代码中多个位置使用的变量currentKampjson。但是,当我尝试将currentKampjson分配给任何被声明为新变量的东西时,这适用于每个变量。

currentKampjson是一个字典类型变量

currentKampjson = {"info":1, "info2":3}

@app.route("/stream/currentkamp")
def streamCurrentKamp():
    return render_template("stream/currentKamp.html", kamp = currentKampjson)

@app.route("/currentKamp/getKamp")
def getCurrentKamp():
    return jsonify(currentKamp)
    
print(currentKampjson)
@app.route("/currentKamp/update", methods=["POST"])
def updateCurrentKamp():
    indata = eval(request.data)
    
    currentKampjson = indata
    with open("jsonFiles/kamper/currentKamp.json","w") as f:
        json.dump(indata, f)
    return "SUCCESS"

即使我在这里使用currentKampjson,此代码也可以正常运行:

@app.route("/currentKamp/update", methods=["POST"])
def updateCurrentKamp():
    indata = eval(request.data)
    print(currentKampjson)
    #currentKampjson = indata
    with open("jsonFiles/kamper/currentKamp.json","w") as f:
        json.dump(indata, f)
    return "SUCCESS"

怪异的互动

杜基

在当前情况下,您需要对global变量使用关键字,但是在通常情况下,全局变量不是一个好习惯。

您可以在此处阅读有关范围的更多信息:

https://realpython.com/python-scope-legb-rule/ https://matthew-brett.github.io/teaching/global_scope.html

currentKampjson = {"info":1, "info2":3}

@app.route("/stream/currentkamp")
def streamCurrentKamp():
    global currentKampjson
    return render_template("stream/currentKamp.html", kamp=currentKampjson)

@app.route("/currentKamp/getKamp")
def getCurrentKamp():
    return jsonify(currentKamp)
    
print(currentKampjson)

@app.route("/currentKamp/update", methods=["POST"])
def updateCurrentKamp():
    global currentKampjson
    indata = eval(request.data)
    
    currentKampjson = indata

    with open("jsonFiles/kamper/currentKamp.json", "w") as f:
        json.dump(indata, f)

    return "SUCCESS"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

变量声明给出错误

来自分类Dev

“数字”不是声明的变量,但仍然有效吗?

来自分类Dev

模态错误,因为已经声明了“未定义”变量

来自分类Dev

添加给出错误的参数-必须声明标量变量“ @variable”

来自分类Dev

我用let声明了我的变量,但它仍然不在全局范围内

来自分类Dev

/ etc / group似乎错误地声明了,仍然有效吗?

来自分类Dev

为什么我的代码接受输入,但仍然打印出错误?

来自分类Dev

Huawei Account Kit指纹证书配置正确,但仍然抛出错误代码6003

来自分类Dev

使用MemoryMappedFile共享变量给出错误

来自分类Dev

带函数的变量给出错误ajax

来自分类Dev

错误:在“ for”循环初始声明中声明了非变量“ strlen”-C

来自分类Dev

设置PATH变量后,蚂蚁仍然抛出错误“找不到python”

来自分类Dev

警报声明给出错误UWP App?

来自分类Dev

QDate 类的前向声明给出错误

来自分类Dev

已经在我的 express 中为 node.js 设置 cors 但仍然给出关于 cors 的相同错误

来自分类Dev

如何测试是否声明了变量?

来自分类Dev

python matplotlib给出错误的边界角

来自分类Dev

高级python代码给出错误的输出

来自分类Dev

super()在Python 2中给出错误

来自分类Dev

python中的StratifiedKFold给出错误

来自分类Dev

Python Max 方法给出错误的结果

来自分类Dev

Python安装mysqlclient不断给出错误

来自分类Dev

Python日期时间给出错误的值

来自分类Dev

必须捕获或声明要抛出的声明异常仍然抛出错误

来自分类Dev

在 python 中捕获异常......但仍然继续

来自分类Dev

我想通过道具但仍然出错

来自分类Dev

XSLT:字符串长度($变量)给出错误的答案

来自分类Dev

用sed中的变量替换String会给出错误

来自分类Dev

大括号,如果块变量定义给出错误

Related 相关文章

  1. 1

    变量声明给出错误

  2. 2

    “数字”不是声明的变量,但仍然有效吗?

  3. 3

    模态错误,因为已经声明了“未定义”变量

  4. 4

    添加给出错误的参数-必须声明标量变量“ @variable”

  5. 5

    我用let声明了我的变量,但它仍然不在全局范围内

  6. 6

    / etc / group似乎错误地声明了,仍然有效吗?

  7. 7

    为什么我的代码接受输入,但仍然打印出错误?

  8. 8

    Huawei Account Kit指纹证书配置正确,但仍然抛出错误代码6003

  9. 9

    使用MemoryMappedFile共享变量给出错误

  10. 10

    带函数的变量给出错误ajax

  11. 11

    错误:在“ for”循环初始声明中声明了非变量“ strlen”-C

  12. 12

    设置PATH变量后,蚂蚁仍然抛出错误“找不到python”

  13. 13

    警报声明给出错误UWP App?

  14. 14

    QDate 类的前向声明给出错误

  15. 15

    已经在我的 express 中为 node.js 设置 cors 但仍然给出关于 cors 的相同错误

  16. 16

    如何测试是否声明了变量?

  17. 17

    python matplotlib给出错误的边界角

  18. 18

    高级python代码给出错误的输出

  19. 19

    super()在Python 2中给出错误

  20. 20

    python中的StratifiedKFold给出错误

  21. 21

    Python Max 方法给出错误的结果

  22. 22

    Python安装mysqlclient不断给出错误

  23. 23

    Python日期时间给出错误的值

  24. 24

    必须捕获或声明要抛出的声明异常仍然抛出错误

  25. 25

    在 python 中捕获异常......但仍然继续

  26. 26

    我想通过道具但仍然出错

  27. 27

    XSLT:字符串长度($变量)给出错误的答案

  28. 28

    用sed中的变量替换String会给出错误

  29. 29

    大括号,如果块变量定义给出错误

热门标签

归档