元々の型を維持したいときどうすればいいですか?例えば
def func(v):
return v if v > 4 else 0

a = [1, 2, 3.4, 5]
print(list(map(func, a)))
の出力は
[0, 0, 0, 5]です。これを
[0, 0, 0.0, 5]にしたいのですが、何をどうしていいやら。
例えば"else 0"のところを、"type(v)(0)"とかまでやってみましたが
うまくいきません。どなたかぁ、教えてください・・・