私は言うリストを持っています:
['batting average', '306', 'ERA', '1710']
文字列に触れずに目的の数値を変換するにはどうすればよいですか?
お手伝いありがとう。
changed_list = [int(f) if f.isdigit() else f for f in original_list]
データは、数字がどの位置にあるかがわかるように見えます。この場合、数字のように見えるものを単に変換するのではなく、これらの位置でデータを明示的に変換する方がおそらく良いでしょう。
ls = ['batting average', '306', 'ERA', '1710']
ls[1] = int(ls[1])
ls[3] = int(ls[3])
これを試して:
def convert( someList ):
for item in someList:
try:
yield int(item)
except ValueError:
yield item
newList= list( convert( oldList ) )