Skip to content

Instantly share code, notes, and snippets.

View adrianmarkperea's full-sized avatar

Adrian Perea adrianmarkperea

View GitHub Profile
Hello, Bob!
Goodbye, Bob!
def say_hello(name):
print(f'Hello, {name}!')
def say_goodbye(name):
print(f'Goodbye, {name}!')
def say_to_bob(fun):
fun('Bob')
Inside foo: 5
NameError: 'more_specific' is not defined
less_specific = 5
def foo():
more_specific = 2
print('Inside foo:', less_specific)
foo()
print(more_specific)
After bleep: 5
After oof: 20
After bop: 20
Globally: 30
def foo():
i_am_non_local = 5
def bleep():
i_am_non_local = 10
def oof():
nonlocal i_am_non_local
i_am_non_local = 20
i_am_global = 5
def foo():
global i_am_global
i_am_global = 10
print(i_am_global)
foo()
print(i_am_global)
# first print => 10
# second print => 5
i_am_global = 5
def foo():
i_am_global = 10
print(i_am_global)
foo()
print(i_am_global)
# outputs
# scopes.py
# Scope A
a = 1
b = 16
def outer():
# Scope B
c = 24
d = 'Hello, World!'