首页 > 解决方案 > ghci 中的 Haskell 索引更改列表

问题描述

哈斯克尔的第 1 天。

我想我在这里做的是创建一个文本列表(字符串),然后检查第一个元素。我实际上似乎在做的是用它的第一个元素替换我的 it 变量。

有人解释一下吗?

Prelude T> it = T.splitOn " " "Will Gil"
it :: [T.Text]
Prelude T> it     
["Will","Gil"]
it :: [T.Text]
Prelude T> it !! 0
"Will"
it :: T.Text
Prelude T> it     
"Will"
it :: T.Text

标签: haskell

解决方案


it是 GHCi 中的一个特殊变量,它具有最后一个未分配的计算值。

所以,当你第一次给予it !! 0时,GHCi 会将其结果存储到it中,因此你给予的下一次的结果it

我很难相信你随机选择了一个变量的名称(顺便说一句,在你的第 1 天),而且很不幸地it从你的脑海中挑选出来。我更倾向于认为您开始学习/阅读有关 Haskell 的内容,然后很快就放手,在 GHCi 中玩了最多 2 分钟,然后在这里问了一个问题。


推荐阅读