Category: Python

  • Making your Python decorators even better, with functool.wraps

    Summary: Decorate your inner wrapper function with @wraps(func), imported from functools, and the decorated function keeps its original name, docstring, and signature. Without it, help() and name report “wrapper” and a generic (*args, **kwargs) signature. It’s one line of code, and I recommend adding it to every decorator you write. The good news: I gave…

    Read more

  • Get code + slides from my “Practical Decorators” talk from Euro Python / PyCon 2019

    I presented my “Practical Decorators” talk twice this year — once at PyCon 2019 in Cleveland, and again at EuroPython 2019 in Basel. Here is the video of my presentation in Cleveland: If you want to get the PDF of my slides, as well as the Python code that I showed, then just enter your…

    Read more

  • Announcing: Weekly Python Exercise A2 — functions and modules for Python beginners

    I spend just about every day teaching Python to people at companies around the world. I’m always amazed to see just how popular Python is, and how many people are using it — and in how many ways they are using it. But I’m also amazed by how many people are just “getting by” with…

    Read more

  • Improve your Python skills with my new book: Python Workout

    A few years ago, I noticed that many of the participants in my corporate Python courses were asking the same question: How can I get additional practice? And I have to say, this question made a lot of sense. After all, you can only absorb so much information from a course, regardless of how good…

    Read more

  • Announcing: My new NumPy course is live!

    Guess what?  Python is the #1 language for data science.  I know, it doesn’t seem like this should be true.  Python is a great language, and easy to learn, but it’s not the most efficient language, either in execution speed or in its memory usage. That’s where NumPy comes in: NumPy lets you have the…

    Read more

  • Python’s “else” clause for loops

    Let’s say that we have a list of tuples, with each tuple containing some numbers. For example: >>> mylist = [(3,5), (2,4,6,8), (4,10, 17), (15, 14, 11), (3,3,2)] I want to write a program that asks the user to enter a number. If one of the tuples adds up to the user’s input, we’ll print…

    Read more

  • Seven ways to improve your team’s Python

    If you’re a manager, then you’re always trying to find ways that’ll help your team do more in less time. That’s why you use Python — because it makes your developers more productive. They can spend more time creating new features, and less time debugging or maintaining existing code. It’s no surprise that so many…

    Read more

  • Registration for Weekly Python Exercise ends in 24 hours

    Registration for Weekly Python Exercise B1 (i.e., advanced level, part 1) closes in about 24 hours. Don’t be left out! WPE gives you exercises in all sorts of advanced Python topics: Data structures, functions, object-oriented programming, comprehensions, generators, and decorators.    These exercises model real-world problems, so that when you encounter problems at your job, you’ll…

    Read more

  • Understanding Python slices

    Let’s say that you have a Python string, and want to grab a substring from it. The best way to do so is with a “slice”: >>> s = ‘abcdefghij’>>> print(s[3:8])defgh In the above code, we’ve defined a string. We’ve then asked for the string to be returned, starting at index 3 and up to…

    Read more

  • Want to improve your Python skills? Join the upcoming cohort of Weekly Python Exercise!

    For more than 20 years, I’ve been teaching Python courses to companies around the world. This means that just about every day, I’m on the front lines of Python learning.  I see, first-hand, what companies want people to learn and also what people are struggling to understand. The result is Weekly Python Exercise, my course…

    Read more