Scope

Scrivere funzioni in Python

Shayne Miel

Software Architect @ Duo Security

Names

tom

Scrivere funzioni in Python

Names

tom and janelle

Scrivere funzioni in Python

Scope

tom and janelle

Scrivere funzioni in Python

Scope

tom, janelle, and another tom

Scrivere funzioni in Python

Scope

x = 7
y = 200
print(x)
7
def foo():
    x = 42
    print(x)
    print(y)
foo()
42
200
print(x)
7
Scrivere funzioni in Python

Scope

scope_question

Scrivere funzioni in Python

Scope

local scope

Scrivere funzioni in Python

Scope

global scope

Scrivere funzioni in Python

Scope

builtin scope

Scrivere funzioni in Python

Scope

nonlocal scope

Scrivere funzioni in Python

The global keyword

x = 7

def foo():
  x = 42
  print(x)

foo()
42
print(x)
7
x = 7

def foo():
  global x
  x = 42
  print(x)

foo()
42
print(x)
42
Scrivere funzioni in Python

The nonlocal keyword

def foo():
  x = 10

  def bar():
    x = 200
    print(x)

  bar()
  print(x)

foo()
200
10
def foo():
  x = 10

  def bar():
    nonlocal x
    x = 200
    print(x)

  bar()
  print(x)

foo()
200
200
Scrivere funzioni in Python

Let's practice!

Scrivere funzioni in Python

Preparing Video For Download...