# Scope

## Python Scope

A variable is only available from inside the region it is created. This is called **scope**.

\
Local Scope

A variable created inside a function belongs to the *local scope* of that function, and can only be used inside that function

#### Example

A variable created inside a function is available inside that function:

```python
def myfunc():
  x = 300
  print(x)

myfunc()
```

#### Function Inside Function

As explained in the example above, the variable `x` is not available outside the function, but it is available for any function inside the function:

#### Example

The local variable can be accessed from a function within the function:

```python
def myfunc():
  x = 300
  def myinnerfunc():
    print(x)
  myinnerfunc()

myfunc()
```

### Global Scope

A variable created in the main body of the Python code is a global variable and belongs to the global scope.

Global variables are available from within any scope, global and local.

#### Example

A variable created outside of a function is global and can be used by anyone:

```python
x = 300

def myfunc():
  print(x)

myfunc()

print(x)
```

### Global Keyword

If you need to create a global variable, but are stuck in the local scope, you can use the `global` keyword.

The `global` keyword makes the variable global.

#### Example

If you use the `global` keyword, the variable belongs to the global scope:

```python
def myfunc():
  global x
  x = 300

myfunc()

print(x)
```

Also, use the `global` keyword if you want to make a change to a global variable inside a function.

#### Example

To change the value of a global variable inside a function, refer to the variable by using the `global` keyword:

```python
x = 300

def myfunc():
  global x
  x = 200

myfunc()

print(x)
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pyclubs.org/python-course-guide/guides/scope.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
