¿Hay una taquigrafía para devolver un valor predeterminado si Ninguno en Python?

En C #, puedo decir x ?? "" x ?? "" , que me dará x si x no es nulo, y la cadena vacía si x es nulo. Lo he encontrado útil para trabajar con bases de datos.

¿Hay una manera de devolver un valor predeterminado si Python encuentra Ninguno en una variable?

Podrías usar el operador or :

 return x or "default" 

Tenga en cuenta que esto también devuelve "default" si x es cualquier valor falso, incluida una lista vacía, 0, cadena vacía o incluso datetime.time(0) (medianoche).

 return "default" if x is None else x 

intente lo anterior

Puedes usar una expresión condicional :

 x if x is not None else some_value 

Ejemplo:

 In [22]: x = None In [23]: print x if x is not None else "foo" foo In [24]: x = "bar" In [25]: print x if x is not None else "foo" bar 
 x or "default" 

funciona mejor, incluso puedo usar una función de llamada en línea, sin ejecutarla dos veces o usar una variable adicional:

 self.lineEdit_path.setText( self.getDir(basepath) or basepath ) 

Lo uso al abrir el dialog.getExistingDirectory() Qt y cancelar, lo que devuelve una cadena vacía.

Tienes la syntax ternaria x if x else '' – ¿eso es lo que buscas?