q語言的函式
函式定義規範:函式名:{函式體},
如果有返回值,則函式體最後一個表示式是值.
預設引數名是x,如果多個引數,則按xyz順序。
如果不用預設引數名,則用
函式名:{[引數名] 函式體}的格式,
比如
f:{x+1}
f1:{[p1] p1+1}
f2:{[p1;p2],p1-p2}
函式的呼叫方法:
函式名[引數],每個引數之間用;隔開。如果只有1個引數,[]可以省去。
比如:
q)f:{x+1} //預設引數名
q)f[1]
2
q)f(3) //這個()只是把3括起來,相當於f 3或f [(3)]
4
q)f1:{[p1] p1+1} //指定引數名
q)f1[2]
3
q)f2:{[p1;p2] p1-p2} //指定2個引數名
q)f2[3;4]
-1
q)f 3
4
q)f2 3;40 //這裡的;不是分隔引數,而是分隔表示式
40
有時候呼叫函式採取f[引數][引數]的形式,這在q裡面稱為投影。比如
q)f2[3;][4]
-1
的含義是,把第1個引數固定為3,第2個引數為4,它的等價寫法是f2[3][4],因為尾隨的;可以省略。而
q)f2[;3][4]
1
的含義是,把第2個引數固定為3,第1個引數為4。非尾隨的;不可以省略。
q語言沒有取字串子串的函式,自己寫了一個:
q)substr:{len:count x;x:(y-1)_x;x:(y+z-len+1)_x}
q)substr["123456";3;2]
"34"
相關文章
- 這就是OpenAI神秘的Q*?史丹佛:語言模型就是Q函式OpenAI模型函式
- C語言函式手冊:c語言庫函式大全|C語言標準函式庫|c語言常用函式查詢C語言函式
- Go 語言函式Go函式
- R語言的scale函式R語言函式
- C語言 itoa函式及atoi函式C語言函式
- C語言 execve()函式C語言函式
- R語言函式-tolowerR語言函式
- C語言常用函式C語言函式
- GO語言————6.1 函式Go函式
- C語言函式sscanf()的用法C語言函式
- C語言qsort函式的使用C語言函式
- 函式式JavaScript(2):如何打造“函式式”程式語言?函式JavaScript
- C語言函式呼叫棧C語言函式
- SQL語言基礎(函式)SQL函式
- go語言學習-函式Go函式
- 詳解C語言函式C語言函式
- tmpnam() - C語言庫函式C語言函式
- tmpfile() - C語言庫函式C語言函式
- C語言時間函式C語言函式
- c語言函式庫(轉)C語言函式
- 使用函式式語言實踐DDD函式
- python是函式式語言嗎Python函式
- 【C語言】函式的概念和函式的呼叫(引數傳遞)C語言函式
- K語言,q語言的前輩
- C語言_簡單的階乘函式C語言函式
- C語言的比較庫函式--qsortC語言函式
- e語言 類似eval函式作用的函式
- C語言庫函式及示例C語言函式
- 函式 -- 就要學習 Go 語言函式Go
- C語言解讀assert函式C語言函式
- C#語言函式遞迴C#函式遞迴
- C語言 sizeof函式詳解C語言函式
- GO語言————6.5 內建函式Go函式
- GO語言————6.6 遞迴函式Go遞迴函式
- C語言標準函式庫C語言函式
- SQL語言運算子與函式SQL函式
- c#語言-高階函式C#函式
- 鴻蒙開發TypeScript語言:【函式】鴻蒙TypeScript函式