以下のコードが印刷されることを期待していますchr7
。
import strutils
var splitLine = "chr7 127471196 127472363 Pos1 0 +".split()
var chrom, startPos, endPos = splitLine[0..2]
echo chrom
代わりに、それは印刷し@[chr7, 127471196, 127472363]
ます。
シーケンスから複数の値を同時にアンパックする方法はありますか?
そして、要素が連続していない場合、上記を行う最も簡単な方法は何でしょうか? 例えば:
var chrom, startPos, strand = splitLine[0..1, 5]
エラーが発生します:
read_bed.nim(8, 40) Error: type mismatch: got (seq[string], Slice[system.int], int literal(5))
but expected one of:
system.[](a: array[Idx, T], x: Slice[system.int])
system.[](s: string, x: Slice[system.int])
system.[](a: array[Idx, T], x: Slice[[].Idx])
system.[](s: seq[T], x: Slice[system.int])
var chrom, startPos, strand = splitLine[0..1, 5]
^