【发布时间】:2016-11-23 14:11:38
【问题描述】:
所以我把最后一块放在管道里
|> Array.iter (fun name -> name
|> transform
|> printfn "RENAME '%s' INTO '%s'" name )
变换是:
let transform (text: string) =
text.Replace(" ", ".")
对我来说iter 谓词函数不是很清楚,它是说将名称推入transform 然后将结果推入printfn 并附加原始名称......
有没有办法使用管道向前或向后操作符使转换管道更能揭示意图。
我想也许
name
|> printfn "RENAME '%S' INTO '%S'"
<| transform
但显然这行不通。
如果它不能在管道中看起来更好,那么我想这是最简洁的方法 - 除了创建一个新函数以某种方式将 printfn 与转换结合起来,但我不介意避免这种情况.. .
我只是想确保我没有遗漏任何简单的语法..
我认为没有,因为我面临一个需要多个参数的函数,为了在管道中使用它,它只能有 1 个参数,这实际上是我通过部分应用程序所做的.
【问题讨论】:
标签: f#