Lindex

Материал из Egghelp.ru - TCL/TK Eggdrop Wiki
Перейти к: навигация, поиск

Команда извлекает элемент списка.

СИНТАКСИС

lindex list index

ОПИСАНИЕ

Команда lindex считает list Tcl-списком и возвращает index-ный элемент этого списка. Для index значение 0 соответствует первому элементу списка, а значение end - последнему. При выполнении команды соблюдаются общие правила интерпретатора Tcl относительно фигурных скобок, двойных кавычек и обратного слеша, хотя подстановки переменных и команд не происходят.

Если index отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента index равно end, команда возвращает последний элемент списка

В случае, если list - это Tcl-список, состоящий из других Tcl-списков, можно напрямую обратить к вложенным элементам.

 set a {a1 a2 a3}
 set b {b1 b2 b3}
 set lst [list $a $b]
 
 # Вернет a2
 putlog [lindex $a 1]
 
 # Вернет b3
 putlog [lindex $lst 1 2]

В данном примере, аргумент 1 - обращается ко второму элементу списка lst (список b), а 2 - к третьему элементу списка b (элемент b3). Данный вид записи аналогичен следующей:

 set a {a1 a2 a3}
 set b {b1 b2 b3}
 set lst [list $a $b]
 
 # Вернет a2
 putlog [lindex $a 1]
 
 # Вернет b3
 putlog [lindex [lindex $lst 1] 2]