Sign inGet started
← Back to all guides

Python functions and variable scope with Deepnote

By Filip Žitný

Updated on March 6, 2024

Introduction to Python functions and variable scope with Deepnote. Functions are fundamental tools in programming, allowing us to encapsulate reusable blocks of code. Let’s explore how to define functions, work with inputs, understand scope, and more.

Writing a Function

A function in Python is a named block of code that performs a specific task. Here’s how you define a basic function:

def greet():
    """Print a greeting message."""
    print("Hello, welcome to Python functions!")

To execute or call this function, you simply use its name followed by parentheses:

greet()  # This will print: Hello, welcome to Python functions!

Function Inputs

Functions can also take inputs, known as parameters. Parameters are specified within the parentheses in the function definition:

def greet_user(username):
    """Print a personalized greeting.
    :param username:str ,The name of the user.
    print(f"Hello, {username}!")

When calling this function, you provide arguments for its parameters:

greet_user("Alice")  # This will print: Hello, Alice!

Return Values

Functions can return values using the return statement. This allows you to compute a result within a function and then use that result elsewhere in your code:

def add_numbers(x, y):
    """ Add two numbers and return the result.
    :param x: int, The first number.
    :param y: int, The second number.
    :returns: int, The sum of x and y.
    return x + y

result = add_numbers(3, 5)
print("The sum is:", result)  # This will print: The sum is: 8

Scope of Variables

Variables defined inside a function are scoped to that function and are not accessible outside of it unless explicitly returned. Here’s an example illustrating variable scope:

def set_message():
    """Set a message and print it."""
    message = "Hello from inside the function!"

set_message()  # This will print: Hello from inside the function!

# Trying to access `message` here will result in an error
# print(message)  # This would cause a NameError


Functions in Python are powerful tools for organizing your code, making it more readable, and promoting reusability. By understanding function definitions, parameters, return values, and variable scope, you’re well-equipped to start writing your functions for various tasks.

Now, let’s apply what we’ve learned!

If you have any questions about this tutorial, please refer to the forum on Deepnote.

Happy coding in Deepnote! 🐍

Filip Žitný

Data Scientist

Follow Filip on Twitter, LinkedIn and GitHub

That’s it, time to try Deepnote

Get started – it’s free
Book a demo



  • Integrations
  • Pricing
  • Documentation
  • Changelog
  • Security




  • Privacy
  • Terms

© Deepnote