13 ottobre, 2020

switch/case in Python -- aggiornamento -- lambda


 Ebbene sì il post precedente aveva un quiz nascosto che non è sfuggito a un mio antico collaboratore, bravi PLG e PaM!

Tra di noi ne abbiamo parlato (a distanza, anche con distanze molto lunghe) e eravamo tutti d'accordo, usare lambda quando si può semplifica il codice, lo rende più chiaro, a patto di non confondere la funzione con un'istruzione di assegnamento.

Allora il codice

def switch(arg, dic):
    return (dic.get(arg, "Invalid argument: " + arg))

viene riscritto così:

switch = lambda arg, dic : dic.get(arg, "Invalid argument: " + arg)

Mi fanno notare che c'era anche una coppia di parentesi ridondante; ma si sa alle parentesi qualcuno è talmente abituato che gli vengono aggratiss 🔴🔵

Nessun commento:

Posta un commento