小编Bre*_*533的帖子

UnboundLocalError:赋值前引用的局部变量'a'

如果执行以下代码将显示错误消息:

UnboundLocalError:赋值前引用的局部变量'a'

a = 220.0
b = 4300.0
c = 230.0/4300.0

def fun():
    while (c > a/b):
        a = a + 1
        print a/b

if __name__ == '__main__':
    fun()
Run Code Online (Sandbox Code Playgroud)

但修改为:

a = 220.0
b = 4300.0
c = 230.0/4300.0

def fun():
    aa = a
    bb = b
    while (c > aa/bb):
        aa = aa + 1
        print aa/bb

if __name__ == '__main__':
    fun()
Run Code Online (Sandbox Code Playgroud)

它会好的.任何建议或指示都会很棒.非常感谢!

python

4
推荐指数
1
解决办法
9611
查看次数

带括号和括号的特殊条件语法

是否有关于以下Python条件语法的任何解释?

>>> a = 10
>>> s = (0, 1)[a<10]
>>> print s
0
>>> a = -10
>>> s = (0, 1)[a<10]
>>> print s
1
Run Code Online (Sandbox Code Playgroud)

它似乎像一个if声明.为什么这样做?

python

4
推荐指数
2
解决办法
199
查看次数

标签 统计

python ×2