gpt4 book ai didi

elm - 如何将字符串记录转换为榆树中的 float

转载 作者:行者123 更新时间:2023-12-05 09:31:20 25 4
gpt4 key购买 nike

我有一条由用户提供的记录:

type alias Model =
{ age : String,
weight : String,
height : String,
appetite : String
}

我想把它转换成数字:

type alias FloatModel =
{ age : Float,
weight : Float,
height : Float,
appetite : Float
}

我的问题是,如果用户输入了错误数据,String.toFloat 可能会返回 Nothing。所以我想我想要一个 Maybe FloatModel 来处理坏数据。我如何在每个成员上调用 String.toFloat,如果它们都成功返回 Just FloatModel,如果没有返回 Nothing

最佳答案

如果你想保留 FloatModel 的完整性,以便所有字段都是 Float 值,你可以有一个接受 Model 的函数> 并返回一个 Maybe FloatModel,只有在所有字段都可以解析时才会成功。

这可以通过 mapping over each of the fields 来完成,因此单个故障将“冒泡”并导致函数返回 Nothing

deserializeModel : Model -> Maybe FloatModel
deserializeModel { age, weight, height, appetite } =
Maybe.map4 FloatModel
(String.toFloat age)
(String.toFloat weight)
(String.toFloat height)
(String.toFloat appetite)

关于elm - 如何将字符串记录转换为榆树中的 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68848906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com