次のような形式の文字列のリストがあります
a = ['str','5','','4.1']
このように、リスト内のすべての数値を float に変換したいが、残りは変更しないでおく
a = ['str',5,'',4.1]
私は試した
map(float,a)
しかし、一部の文字列をfloatに変換できないため、明らかにエラーが発生しました。私も試しました
a[:] = [float(x) for x in a if x.isdigit()]
しかし、それは私に与えるだけです
[5]
そのため、浮動小数点数と他のすべての文字列が失われます。文字列と数値を同時に保持するにはどうすればよいですか?