Question: This is something I just noticed but can't find any information, not in PEPs, APIs, or examples. We all know `print` changed to `print()` in Python 3, but I've always seen `return` written as a statement, not a function. However it has exactly the same behaviour as a function. I can see the similarity between this and the changes that happened with `print`, and `print()` shows up in the Built-in Functions section of Python 3. But not `return()`.

So what's going on with the `return()` function?

Answer: 
It's not a function. It's a statement with unnecessary parentheses. `(val)` means `val`, so `return (val)` is the same as `return val`.

Writing `return(val)`, making it look like a function, is just bad style.
It process it as:

```
return (val)

```

As a number with a paired parenthesis, not a function, but

```
>>> val = 10
>>> (val)
10
>>> 

```

`(val)` is not changing anything, only thing it does is to keep it as a number, so it ends with:

```
return val

```

Which is the same as the other one