def smallest(x, y, z):
if (not (y // x)): # Same as "if (y < x)"
return y if (not (y // z)) else z
return x if (not (x // z)) else z
print(smallest(3,5,7))
Я думаю, что использование деления по полу (//) было предназначено вместо нормального деления (/). с этим мы можем иметь ноль в качестве возвращаемого значения деления, скажем, например, 3 // 5, и ноль считается ложным значением в python.