レコードをその要素で更新する方法
(pprint records)
({:Name "John" :Age 12 :Index 123 :Class_Index}
{:Name "Joe" :Age 13 :Index 3 :Class_Index}
{:Name "Jon" :Age 14 :Index 4 :Class_Index})
年齢 + インデックスに基づいて class_index が更新されるような関数を作成するにはどうすればよいですか。同時に、関数の実行後に出力が次のようになるようにレコードを更新できます
(pprint records)
({:Name "John" :Age 12 :Index 123 :Class_Index 135}
{:Name "Joe" :Age 13 :Index 3 :Class_Index 16}
{:Name "Jon" :Age 14 :Index 4 :Class_Index 18})
ただし、行が多すぎるため、レコードのすべての要素を手動で入力することはできません。あなたの答えの機能はまだ使用できますか? pprint は単に説明のためのものです。実際、私のレコードには代わりに多くの要素が含まれます。
意味で (def records (atom [records])) または行を反復処理する必要があり、メモリを大量に消費します。これを行うより効率的な方法はありますか。