3dc324d3f1
This adds the Python files in the tests/ directory to be formatted with ./tools/codeformat.py. The basics/ subdirectory is excluded for now so we aren't changing too much at once. In a few places `# fmt: off`/`# fmt: on` was used where the code had special formatting for readability or where the test was actually testing the specific formatting.
17 lines
469 B
Python
17 lines
469 B
Python
"""
|
|
categories: Core,Runtime
|
|
description: Code running in eval() function doesn't have access to local variables
|
|
cause: MicroPython doesn't maintain symbolic local environment, it is optimized to an array of slots. Thus, local variables can't be accessed by a name. Effectively, ``eval(expr)`` in MicroPython is equivalent to ``eval(expr, globals(), globals())``.
|
|
workaround: Unknown
|
|
"""
|
|
val = 1
|
|
|
|
|
|
def test():
|
|
val = 2
|
|
print(val)
|
|
eval("print(val)")
|
|
|
|
|
|
test()
|