美文网首页
2019-04-09 全局变量与局部变量

2019-04-09 全局变量与局部变量

作者: _BlueBunnyBO_ | 来源:发表于2019-04-09 22:36 被阅读0次

起因:我在一段代码中声明了一个全局变量best_accuracy,在一个函数中用到了这个变量if accuracy>best_accuracy,但是运行时报错“UnboundLocalError: local variable 'best_accuracy' referenced before assignment”。说明此处的best_accuracy被python当作函数中的局部变量了

调查:在python中,当函数中的某变量可能是指全局变量,也可能是指局部变量时,就会发生引用歧义。这时python默认这个变量是局部变量。如果想将其当作全局变量使用,需要加global关键字声明这是全局变量,例如:

global best_accuracy

if accuracy>best_accuracy:

    best_accuracy = accuracy

详见python 全局变量引用与修改 - yanfengt - 博客园

相关文章

  • C/C++知识点分享(16)

    1、statac全局变量、局部变量、函数与普通全局变量、局部变量、函数,static全局变量与普通的全局变量有什么...

  • 9道常见C语言面试题

    1、局部变量能否和全局变量重名? 答:能,局部会屏蔽全局。要用全局变量,需要使用"::" ;局部变量可以与全局变量...

  • 全局变量和局部变量

    局部变量可以与全局变量重名,但是局部变量会屏蔽全局变量。要使用全局变量,需要使用::。在函数体内引用变量会用到同名...

  • 编程中的局部变量,全局变量,静态变量

    关于局部变量、全局变量与静态全局变量和静态局部变量的比较与分析和拓展: 首先要明白的是局部变量与其它三个有本质区别...

  • Python篇-函数(二)函数结构与存储

    一 : 全局变量与局部变量 全局变量,函数内部直接使用 函数内部的局部变量 global 使用global相当于引...

  • 关于JS中的作用域链

    1. 全局变量与局部变量 全局变量:定义在函数外部的变量可以被叫做全局变量局部变量:定义在函数内部的变量,但是如果...

  • 你真的理解static吗?

    static修饰的全局变量与普通的全局变量的区别static修饰的局部变量和普通局部变量的区别static修饰的函...

  • Swift-全局变量、局部变量以及类型属性

    全局变量和局部变量 全局变量和局部变量 计算属性和属性观察器所描述的功能也可以用于全局变量和局部变量。全局变量是在...

  • C/C++知识点(1)

    1. 局部变量能否和全局变量重名? 解析:能,局部会屏蔽全局。要用全局变量,需要使用"::" 局部变量可以与全局变...

  • 2019-04-09 全局变量与局部变量

    起因:我在一段代码中声明了一个全局变量best_accuracy,在一个函数中用到了这个变量if accuracy...

网友评论

      本文标题:2019-04-09 全局变量与局部变量

      本文链接:https://www.haomeiwen.com/subject/xomwiqtx.html