Lindex — различия между версиями
Deniska (обсуждение | вклад) |
Deniska (обсуждение | вклад) |
||
(не показано 6 промежуточных версии этого же участника) | |||
Строка 1: | Строка 1: | ||
− | Команда извлекает элемент списка. | + | Команда извлекает элемент [[list|списка]]. |
'''СИНТАКСИС''' | '''СИНТАКСИС''' | ||
Строка 11: | Строка 11: | ||
Если '''index''' отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента '''index''' равно end, команда возвращает последний элемент списка | Если '''index''' отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента '''index''' равно end, команда возвращает последний элемент списка | ||
− | В случае, если ''list''' - это Tcl-список, состоящий из других Tcl-списков, можно напрямую обратить к вложенным элементам. | + | В случае, если '''list''' - это Tcl-список, состоящий из других Tcl-списков, можно напрямую обратить к вложенным элементам. |
− | set a | + | set a [list a1 a2 a3] |
− | set b | + | set b [list b1 b2 b3] |
set lst [list $a $b] | set lst [list $a $b] | ||
Строка 24: | Строка 24: | ||
В данном примере, аргумент ''1'' - обращается ко второму элементу списка '''lst''' (список b), а ''2'' - к третьему элементу списка '''b''' (элемент b3). Данный вид записи аналогичен следующей: | В данном примере, аргумент ''1'' - обращается ко второму элементу списка '''lst''' (список b), а ''2'' - к третьему элементу списка '''b''' (элемент b3). Данный вид записи аналогичен следующей: | ||
− | set a | + | set a [list a1 a2 a3] |
− | set b | + | set b [list b1 b2 b3] |
set lst [list $a $b] | set lst [list $a $b] | ||
Строка 34: | Строка 34: | ||
putlog [lindex [lindex $lst 1] 2] | putlog [lindex [lindex $lst 1] 2] | ||
+ | == Пример == | ||
+ | set a [list a1 a2 a3] | ||
+ | # Вернет a2 | ||
+ | putlog [lindex $a 1] | ||
== См. также == | == См. также == | ||
* [[set]] - присвоение | * [[set]] - присвоение | ||
* [[putlog]] - вывод сообщения в лог-файл | * [[putlog]] - вывод сообщения в лог-файл | ||
− | * [[list]] - создание списка | + | * [[list]] - создание списка |
+ | * [[lrange]] - выборка нескольких элементов списка | ||
+ | * [[linsert]] - вставка элементов в список | ||
+ | * [[llength]] - длина списка | ||
+ | * [[lsort]] - сортировка списка | ||
+ | * [[lappend]] - дозапись списка элементами | ||
+ | * [[lsearch]] - поиск элементов в списке | ||
+ | * [[lreplace]] - замена элементов в списке | ||
+ | * [http://www.tcl.tk/man/tcl8.5/TclCmd/lindex.htm TCL.tk - lindex] | ||
+ | [[Category:TCL]] |
Текущая версия на 10:21, 14 октября 2008
Команда извлекает элемент списка.
СИНТАКСИС
lindex list index
ОПИСАНИЕ
Команда lindex считает list Tcl-списком и возвращает index-ный элемент этого списка. Для index значение 0 соответствует первому элементу списка, а значение end - последнему. При выполнении команды соблюдаются общие правила интерпретатора Tcl относительно фигурных скобок, двойных кавычек и обратного слеша, хотя подстановки переменных и команд не происходят.
Если index отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента index равно end, команда возвращает последний элемент списка
В случае, если list - это Tcl-список, состоящий из других Tcl-списков, можно напрямую обратить к вложенным элементам.
set a [list a1 a2 a3] set b [list 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 [list a1 a2 a3] set b [list b1 b2 b3] set lst [list $a $b] # Вернет a2 putlog [lindex $a 1] # Вернет b3 putlog [lindex [lindex $lst 1] 2]
Пример
set a [list a1 a2 a3] # Вернет a2 putlog [lindex $a 1]
См. также
- set - присвоение
- putlog - вывод сообщения в лог-файл
- list - создание списка
- lrange - выборка нескольких элементов списка
- linsert - вставка элементов в список
- llength - длина списка
- lsort - сортировка списка
- lappend - дозапись списка элементами
- lsearch - поиск элементов в списке
- lreplace - замена элементов в списке
- TCL.tk - lindex