No se puede reasignar una variable global. Siempre apuntará al mismo objeto. Sin embargo, su contenido puede cambiar si el valor es mutable (por ejemplo, el contenido de una lista). Las variables locales no tienen esta restricción.
a = [1, 2]
a[1] = 3
b = 3
b = 4 # forbidden
ERROR: /path/ext.bzl:7:1: Variable b is read only
Obtendrás un error similar si intentas redefinir una función (no se admite la sobrecarga de funciones), por ejemplo:
def foo(x): return x + 1
def foo(x, y): return x + y # forbidden