गड़बड़ी: वैरिएबल x सिर्फ़ रीड ओनली है

किसी समस्या की शिकायत करें सोर्स देखें Nightly · 8.1 · 8.0 · 7.5 · 7.4

किसी ग्लोबल वैरिएबल को फिर से असाइन नहीं किया जा सकता. यह हमेशा एक ही ऑब्जेक्ट पर पॉइंट करेगा. हालांकि, अगर वैल्यू में बदलाव किया जा सकता है, तो उसका कॉन्टेंट बदल सकता है. उदाहरण के लिए, किसी सूची का कॉन्टेंट. लोकल वैरिएबल पर यह पाबंदी लागू नहीं होती.

a = [1, 2]

a[1] = 3

b = 3

b = 4  # forbidden

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

किसी फ़ंक्शन को फिर से परिभाषित करने पर, आपको गड़बड़ी का ऐसा ही मैसेज दिखेगा. फ़ंक्शन को फिर से परिभाषित करने की सुविधा काम नहीं करती. उदाहरण के लिए:

def foo(x): return x + 1

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