Python doesn’t have variable declarations, so it has to figure out the scope of variables itself. It does so by a simple rule: If there is an assignment to a variable inside a function, that variable is considered local.[1] Thus, the line
counter += 1
implicitly makes counter
local to increment()
. Trying to execute this line, though, will try to read the value of the local variable counter
before it is assigned, resulting in an UnboundLocalError
.[2]
If counter
is a global variable, the global
keyword will help. If increment()
is a local function and counter
a local variable, you can use nonlocal
in Python 3.x.
Related Posts:
- Using global variables in a function
- filedialog, tkinter and opening files
- Python function global variables?
- Why do I get a “referenced before assignment” error when assigning to a global variable in a function?
- Use of “global” keyword in Python
- Why do I get a “referenced before assignment” error when assigning to a global variable in a function?
- Defining lists as global variables in Python
- How can I access global variable inside class in Python
- How do I copy a file in Python?
- Use Gif Logo For Loading Screen In Kivy
- How can I make a time delay in Python? [duplicate]
- Python – TypeError: ‘int’ object is not iterable
- are there dictionaries in javascript like python?
- How do I update\upgrade pip itself from inside my virtual environment?
- How does numpy.newaxis work and when to use it?
- How to move a file in Python?
- Round a floating-point number down to the nearest integer?
- beyond top level package error in relative import
- How do you append to a file?
- sklearn error ValueError: Input contains NaN, infinity or a value too large for dtype(‘float64’)
- Jupyter Notebook not saving: ‘_xsrf’ argument missing from post
- What does it mean to have an index to scalar variable error? python
- Could not install packages due to an EnvironmentError:
- What does “e” in “1e-5” in Python language mean and what is the name of this notation?
- How to avoid “RuntimeError: dictionary changed size during iteration” error?
- ‘Conda’ is not recognized as internal or external command
- `from … import` vs `import .` [duplicate]
- Is module __file__ attribute absolute or relative?
- How do I convert a list of ascii values to a string in python?
- How can I compare two lists in python and return matches
- Convert DataFrame column type from string to datetime, dd/mm/yyyy format
- How can I remove a trailing newline?
- Is there a list of line styles in matplotlib?
- Import urllib.request, ImportError: No module named request
- TypeError: cannot convert the series to
- Get a list from Pandas DataFrame column headers
- Using Pip to install packages to Anaconda Environment
- Using %matplotlib notebook after %matplotlib inline in Jupyter Notebook doesn’t work
- How to create new folder?
- Python Sets vs Lists
- How do I resize an image using PIL and maintain its aspect ratio?
- Display image as grayscale using matplotlib
- AttributeError: ‘list’ object has no attribute ‘replace’ when trying to remove character
- PermissionError: [WinError 5] Access is denied
- Pytorch reshape tensor dimension
- How to iterate over columns of pandas dataframe to run regression
- JSON to pandas DataFrame
- Understanding NumPy’s einsum
- For loop and ‘numpy.float64’ object is not iterable error
- What are the causes of overflow encountered in double_scalars besides division by zero?
- Creating a dictionary from a csv file?
- How can I check for NaN values?
- Bad operand type for unary +: ‘str’
- How do I get the parent directory in Python?
- How to fix: “UnicodeDecodeError: ‘ascii’ codec can’t decode byte”
- How to read a text file into a list or an array with Python
- Map to List error: Series object not callable
- ctypes error: libdc1394 error: Failed to initialize libdc1394
- Python: cannot concatenate ‘str’ and ‘int’ objects error
- AttributeError: ‘Tensor’ object has no attribute ‘_keras_history’
- pip install -r requirements.txt [Errno 2] No such file or directory: ‘requirements.txt’
- Zsh: Conda/Pip installs command not found
- Find the nth occurrence of substring in a string
- How to convert ‘binary string’ to normal string in Python3?
- What is the meaning of curly braces?
- Copy a list of list by value and not reference
- How do I print bold text in Python?
- python3 TypeError: ‘function’ object is not iterable
- pip connection failure: cannot fetch index base URL http://pypi.python.org/simple/
- Moving average or running mean
- Find which version of package is installed with pip
- What do the python file extensions, .pyc .pyd .pyo stand for?
- NaN loss when training regression network
- Building multi-regression model throws error: `Pandas data cast to numpy dtype of object. Check input data with np.asarray(data).`
- TypeError: ‘set’ object does not support indexing
- Python 3.6 No module named pip
- Difference between import tkinter as tk and from tkinter import
- Split function add: \xef\xbb\xbf…\n to my list
- ImportError in importing from sklearn: cannot import name check_build
- Root mean square of a function in python
- Installing opencv on Windows 10 with python 3.6 and anaconda 3.6
- H14 error in heroku – “no web processes running”
- Importing Pandas gives error AttributeError: module ‘pandas’ has no attribute ‘core’ in iPython Notebook
- What does this Django regular expression mean? `?P`
- Strange error about invalid syntax
- NameError: name ‘python’ is not defined
- What is an easy way to implement fprintf in python?
- What is the recommended way to use Vim folding for Python code
- Plotting a python dict in order of key values
- How to normalize a NumPy array to within a certain range?
- How to check if a user is logged in (how to properly use user.is_authenticated)?
- Can I remove script tags with BeautifulSoup?
- gunicorn.errors.HaltServer:
django - Python ‘while’ with two conditions: “and” or “or”
- How to pass a list by reference?
- Python Quicksort Runtime Error: Maximum Recursion Depth Exceeded in cmp
- “for loop” with two variables?
- Python webbrowser.open() to open Chrome browser
- Flatten nested dictionaries, compressing keys
- i want to run python script in wordpress