EuroPython 2018

More Than You Ever Wanted To Know About Python Functions

Speaker(s) Mark Smith

What exactly are functions? Let’s talk about functions, methods, callables and closures - what they are, what you can give them, what they can give you, what you can do with them … and what’s inside.

You probably think you already know everything about functions, but you probably don’t!

Input & Output: How do you get things in and out of functions? I’ll cover parameters and the myriad of ways they can be specified, provided and accessed - including helpful hints to avoid common mistakes! I’ll cover return values, briefly, along with variable scopes and exceptions.

Closures: What are they, how do they work and how they can affect memory usage.

Methods: How does a method differ from a function, when are they made, how do they work (where does self come from?) and how to access the function inside every method.

__magic__:Make your own callables from any object!

Introspection: Using modern Python techniques, what can you find out about a function, and what can you do with that information?

Bytecode: What happens if you open up a function and look at its insides? Can you change it and put it back together again? (Spoiler: Yes, you can.)

By the end of this talk, I guarantee* you’ll know more about callables than when you walked in, along with techniques both practical and so extreme your colleagues will never let you merge them to master.

(*This guarantee is legally non-binding and cannot be redeemed in any way.)

in on Thursday 26 July at 14:35 See schedule

Do you have some questions on this talk?

New comment