Skip to content

Latest commit

 

History

History
65 lines (56 loc) · 1.89 KB

README.md

File metadata and controls

65 lines (56 loc) · 1.89 KB
VarScope Logo

VarScope

Documentation codecov

Ultra simple module for creating local scopes in Python.

Installation

VarScope can be installed with pip:

pip install varscope

Usage

>>> from varscope import scope
>>>
>>> a = 1
>>> with scope():  # Everything defined after will only apply inside the scope
...     a = 2
...     b = 3
...
>>> a
1
>>> b  # Not defined, because outside of scope
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'b' is not defined
>>>
>>> with scope() as s:  # We can choose to keep some variables
...     a = 2
...     b = 3
...     s.keep("b")
...
>>> b
3
>>> with scope("a"):  # We can also move variables inside scope
...     a = 2
...
>>> a  # Not defined, because outside of scope
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined
>>>
>>> d = {}
>>> with scope():  # Scope can mutate object from outside
...     d["a"] = 1
...
>>> d["a"]
1