Lindex — различия между версиями

Материал из Egghelp.ru - TCL/TK Eggdrop Wiki
Перейти к: навигация, поиск
Строка 11: Строка 11:
 
Если '''index''' отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента '''index''' равно end, команда возвращает последний элемент списка
 
Если '''index''' отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента '''index''' равно end, команда возвращает последний элемент списка
  
В случае, если ''list''' - это Tcl-список, состоящий из других Tcl-списков, можно напрямую обратить к вложенным элементам.
+
В случае, если '''list''' - это Tcl-список, состоящий из других Tcl-списков, можно напрямую обратить к вложенным элементам.
  
 
   set a {a1 a2 a3}
 
   set a {a1 a2 a3}

Версия 09:53, 14 октября 2008

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

СИНТАКСИС

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]


См. также

  • set - присвоение
  • putlog - вывод сообщения в лог-файл
  • list - создание списка