Q 语言 - 列表
列表是q语言的基本构建块,因此彻底理解列表非常重要。列表只是Atomics(Atomics元素)和其他列表(一个或多个Atomics的组)的有序集合。
列表类型
通用列表将其项目括在匹配的括号内,并用分号分隔它们。例如 -
(9;8;7) or ("a"; "b"; "c") or (-10.0; 3.1415e; `abcd; "r")
如果一个列表由相同类型的Atomics组成,则称为统一列表。否则,它被称为通用列表(混合类型)。
数数
我们可以通过计数来获取列表中的项目数。
q)l1:(-10.0;3.1415e;`abcd;"r") / Assigning variable name to general list q)count l1 / Calculating number of items in the list l1 4
简单列表的示例
q)h:(1h;2h;255h) / Simple Integer List q)h 1 2 255h q)f:(123.4567;9876.543;98.7) / Simple Floating Point List q)f 123.4567 9876.543 98.7 q)b:(0b;1b;0b;1b;1b) / Simple Binary Lists q)b 01011b q)symbols:(`Life;`Is;`Beautiful) / Simple Symbols List q)symbols `Life`Is`Beautiful q)chars:("h";"e";"l";"l";"o";" ";"w";"o";"r";"l";"d") / Simple char lists and Strings. q)chars "hello world"
**注意 - 简单的字符列表称为字符串。
列表包含Atomics或列表。要创建单个项目列表,我们使用 -
q)singleton:enlist 42 q)singleton ,42
要区分Atomics和等效的单例,请检查它们类型的符号。
q)signum type 42 -1i q)signum type enlist 42 1i