相关疑难解决方法(0)

不明白为什么会发生UnboundLocalError

我在这做错了什么?

counter = 0

def increment():
  counter += 1

increment()
Run Code Online (Sandbox Code Playgroud)

上面的代码抛出了一个UnboundLocalError.

python scope global-variables

153
推荐指数
5
解决办法
18万
查看次数

UnboundLocalError:在赋值Python之前引用的局部变量'L'

当我尝试编译下面的代码时,我得到了这个错误

UnboundLocalError: local variable 'L' referenced before assignment
Run Code Online (Sandbox Code Playgroud)

有人可以解释原因吗?是不是之前分配的全局变量?

我的Python版本是2.7.3

#!/usr/bin/env python

import pygame
from pygame.locals import *
from sys import exit
import random
import math

R = int(8)  # promien planety
N = 5  # liczba planet
G = 2  # stala "grawitacyjna"
L = 1

def compute_dv(p1,p2):
    dx = p2[0]-p1[0]
    dy = p2[1]-p1[1]
    r = math.hypot(dx,dy)
    dx /= r*r
    dy /= r*r
    if(L>1000):
   print "r= ", r, "dx= ", dx, "dy= ", dy, "dx/ r*r = ", dx, …
Run Code Online (Sandbox Code Playgroud)

python python-2.7

6
推荐指数
1
解决办法
5万
查看次数

标签 统计

python ×2

global-variables ×1

python-2.7 ×1

scope ×1