gpt4 book ai didi

nim-lang - 是否有可能破坏 Nim 中的序列?

转载 作者:行者123 更新时间:2023-12-05 08:49:40 26 4
gpt4 key购买 nike

有没有可能在 Nim 中获取前 N 个元素?像这样的东西:

let [a, b, ...rest] = "a/b/c".split("/")

附言

用例我正在尝试解析“NYSE:MSFT”字符串

proc parse_esymbol*(esymbol: string): tuple[string, string] =
let parts = esymbol.split(":")
assert parts.len == 2, fmt"invalid esymbol '{esymbol}'"
(parts[0], parts[1])

echo parse_esymbol("NYSE:MSFT")

最佳答案

您可以像这样从元组中分配变量:

let (a,b) = ("a","b")

没有内置的 seq 到 tuple 转换,但你可以使用像这样的小宏来完成:

macro first[T](s:openArray[T],l:static[int]):untyped =       
result = newNimNode(nnkPar)
for i in 0..<l:
result.add nnkBracketExpr.newTree(s,newLit(i))


let (a,b) = "a/b/c".split('/').first(2)

关于nim-lang - 是否有可能破坏 Nim 中的序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63568586/

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