Erro: a variável x é somente leitura

Informar um problema Ver a fonte Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Uma variável global não pode ser reatribuída. Ele sempre vai apontar para o mesmo objeto. No entanto, o conteúdo pode mudar se o valor for mutável (por exemplo, o conteúdo de uma lista). As variáveis locais não têm essa restrição.

a = [1, 2]

a[1] = 3

b = 3

b = 4  # forbidden

ERROR: /path/ext.bzl:7:1: Variable b is read only

Você vai receber um erro semelhante se tentar redefinir uma função (não há suporte para sobrecarga de função), por exemplo:

def foo(x): return x + 1

def foo(x, y): return x + y  # forbidden