let x=[|15..20|]
let y=Array.map f x
printf "%O" y
Run Code Online (Sandbox Code Playgroud)
好吧,我得到了一个类型信息.
有没有办法用","的分隔符打印"y"的每个元素,而不必使用for循环?
我有以下代码片段:
> 1..10|%{$count=0}{$count+=$_}{$count}
55
> 1..10|Sum
Run Code Online (Sandbox Code Playgroud)
最后一行显然显示错误,因为没有"Sum"功能.有没有一种方便的方法来汇总PowerShell中的项目?
我刚试过这个:
Prelude> [x*2|x<-[1..10]]
[2,4,6,8,10,12,14,16,18,20]
Run Code Online (Sandbox Code Playgroud)
好吧,它似乎不像F#的"seq",它是懒惰的评估.这里所有元素都打印出来,所以"列表理解"似乎是热切的评价.
如果我想建立一个"懒惰评估"的怎么办?谢谢.
Python或Perl支持:
python xxx.py
perl xxx.pl
powershell xxx.ps1
Run Code Online (Sandbox Code Playgroud)
执行脚本并退出退出代码.当我尝试GHCi(as ghci xxx.hs)时,它似乎加载xxx.hs文件并进入交互模式,而不退出.
main像GHC编译器那样的功能?在Haskell中,当编写函数时,它意味着我们将某些东西(输入)映射到另一个东西(输出).我试过LYAH来理解Functor的定义:看起来像普通的Functor一样.
很困惑,需要你的建议.谢谢.
如果我创建列表就好
List(10 to 1000)
Run Code Online (Sandbox Code Playgroud)
实际上,List仅包含范围对象,并且在访问特定元素时动态生成列表成员.
但我的要求是在没有范围对象的情况下构造一个真实的List(10,11,12 ... 1000).我发现
"for ... yield"
Run Code Online (Sandbox Code Playgroud)
也是懒惰的评价,因此不符合我的需要.如果我不想使用for循环将元素附加到空List,有没有一种方便的方法呢?
非常感谢.
我在d下有3个ps1文件:
-a--- 6/19/2015 2:52 PM 104 Untitled1.ps1
-a--- 6/19/2015 2:56 PM 204 Untitled2.ps1
-a--- 6/16/2015 1:17 PM 3073 Untitled3.ps1
Run Code Online (Sandbox Code Playgroud)
我可以使用get-childitem检索它们:
get-childitem d:\
Run Code Online (Sandbox Code Playgroud)
但这失败了:
get-childitem d:\ -Force -Include *.ps1
Run Code Online (Sandbox Code Playgroud)
此命令不显示任何内容。为什么?我只想过滤掉.ps1文件。我的命令有什么问题吗?
好奇,似乎在声明一个名字时,我们总是指定一些有效值,比如让a = 3.问题是,在命令式语言中包括c/java,总是有一个关键字"null".Haskell有类似的东西吗?什么时候函数对象可以为null?
我是否必须在所有2D操作中使用Array2D然后将它们转换为List2D?任何方便的函数调用或库来定义和操作2D列表?
喜欢:
& another.ps1
Run Code Online (Sandbox Code Playgroud)
和
. another.ps1
Run Code Online (Sandbox Code Playgroud)
他们的区别是什么?我希望获取另一个PowerShell脚本的输出文本,同时不想导入另一个脚本中定义的内部函数.我可以使用什么声明?我发现即使"&"命令也会自动导入其他powershell脚本的所有函数定义.
谢谢.