2023年12月9日發(作者:做人難的經典語句)

Tcl列表排序命令之lsort
lsort ?options? list
對列表中的元素進行排序,返回排序后的新列表。默認情況下以ascii的順序遞增排序。options支持以下選項:
選項
-ascii
說明
字符串比較。
字典比較。與-asii相同,除了兩點:1.除非字母為排序的關鍵點,否則忽略大小寫。如aBc會排在abb和abc之間。2.如果兩個
字符串嵌入了數字,數字會按整數比較,而不是字符。如a10b在a9b和a11b之間。
將列表元素轉換為整數并使用整數比較。
將列表元素轉換為浮點值并使用浮點數比較。
使用cmds作為比較命令。由cmds命令組成的腳本附加兩個元素作為額外參數,腳本需要在第一個元素大于、等于或小于第二
個元素時分別返回一個大于、等于或小于零的整數。
按遞增順序對列表進行排序。
按遞減順序對列表進行排序
返回排序后的列表索引,而不是排序后的值。
如果指定了此選項,但是沒有使用-stride選項,則列表中每個元素本身必須是一個合適的Tcl子列表。lsort將從每個子列表中
-index indexList提取第indexList個元素進行比較,而不是基于整個子列表進行排序。如果子列表中還包含子列表,則indexList還可以是索引
的列表,解析方式與lindex相同,并且支持string index。
Tcl8.6起,如果指定了此選項,則將列表中strideLength個元素視為一組,這些組按組中的第一個元素進行排序或者在使用-
-stride strideLengthindex選項時,按每組中-index指定的索引處的元素進行排序。元素在其組中始終保持相同的位置。要注意的是:列表長度必須
是strideLength的整數倍,并且最小為2。
-noca
-unique
比較時不區分大小寫。與-dictionary、-integer、-real選項同時使用時無效。
如果指定了此選項,則只保留列表中找到的最后一組重復元素。是否重復取決于排序時使用的比較方法。
-dictionary
-integer
-real
-command cmds
-increasing
-decreasing
-indices
t list1 {aBc abc abb}
lsort $list1
lsort -noca $list1
lsort -dictionary $list1
lsort -indices $list1
lsort -indices -decreasing $list1
t list2 {{a 10} {b 1} {c 3}}
lsort -index 1 $list2
lsort -integer -index 1 $list1
t list3 {a 10 b 1 c 3}
lsort -stride 2 $list3
lsort -stride 2 -index 1 -integer $list3
lsort -noca $list1
t list4 {{a 1} {b 1} {c 3}}
lsort -unique $list4
lsort -unique -index 1 $list4
本文發布于:2023-12-09 21:21:26,感謝您對本站的認可!
本文鏈接:http://www.newhan.cn/zhishi/a/1702128087241125.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:Tcl列表排序命令之lsort.doc
本文 PDF 下載地址:Tcl列表排序命令之lsort.pdf
| 留言與評論(共有 0 條評論) |