/ / Verificar si la condición coincide con múltiples variables - python, python-2.7, conditional

Compruebe si la condición coincide con múltiples variables - python, python-2.7, conditional

Tengo un método / función que consigue pasar varias variables que posiblemente tienen el valor Ninguno. ¿Cómo puedo verificar todas las variables para el valor Ninguno y reemplazarlo con una cadena de la manera más pirónica posible?

Código de ejemplo:

def logData(self, var1=None, var2=None, var3=None):
if var1 is None:
var1 = "---"
if var2 is None:
var2 = "---"
if var3 is None:
var3 = "---"

# what I would prefer / pseudo code:
if list(var1, var2, var3) is None:
list[1] = "---"

Respuestas

2 para la respuesta № 1
var1, var2, var3 = (a or "---" for a in [var1, var2, var3])

2 para la respuesta № 2

Utilice el desempaquetado de la tupla:

var1, var2, var3 = ["---" if (x is None) else x for x in (var1, var2, var3)]

-1 para la respuesta № 3

Podrías lograr esto usando **kwargs:

def logData(self, **kwargs):
for key,value in kwargs.iteritems():
if value is None:
# do assignment ...