gpt4 book ai didi

apl - APL 中带有标量和向量的字符串长度

转载 作者:行者123 更新时间:2023-12-04 18:09:44 27 4
gpt4 key购买 nike

我几周前才开始学习 APL,所以这听起来像是一个新手问题。

B是一个字符串,在 APL 术语中可以是标量或向量。如果是标量,⍴B返回 null 而不是我想要的字符串长度。

B←'QR'
⍴B ⍝ returns 2

B←'Q'
⍴B ⍝ returns null

我发现了一种解决方法:
⍴1↓'X',B ⍝ concatenating X and then removing it returns a value of 1

那行得通,但似乎有点矫枉过正,所以我想知道是否有更标准的方法来查找字符串长度。

是我一个人还是这看起来有点不一致?我读过的教程说将标量视为类似于向量代数中的点。但是,如何将标量连接到标量生成向量,而从向量中删除标量却永远不会生成标量?

我真的很喜欢 APL,所以这个问题并不意味着批评。我的问题是,查找字符串长度的最佳方法是什么?而且,如果有人能对这种看似不一致的情况有所了解,我们将不胜感激。

最佳答案

连接 X 并删除它的原因是连接产生了一个向量。使用 1↓ 删除 X然后把它作为一个向量,准确地说是一个空向量。向量的长度可以用⍴来测量。这也是 CrazyMetal 的解决方案所做的:monadic ,将其参数(任何维度的标量或数组)转换为向量。测量它的 rho 会给你你正在寻找的答案: 查找字符串长度的标准方法。

⍴,B

关于apl - APL 中带有标量和向量的字符串长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17296874/

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