Lindex — различия между версиями
Deniska (обсуждение | вклад) (Новая: Команда извлекает элемент списка. ''СИНТАКСИС'' lindex '''list index''' ''ОПИСАНИЕ'' Команда lindex считает '''li...) |
Deniska (обсуждение | вклад) |
||
(не показано 11 промежуточных версии этого же участника) | |||
Строка 1: | Строка 1: | ||
− | Команда извлекает элемент списка. | + | Команда извлекает элемент [[list|списка]]. |
− | ''СИНТАКСИС'' | + | '''СИНТАКСИС''' |
− | [[lindex]] | + | [[lindex]] ''list index'' |
− | ''ОПИСАНИЕ'' | + | '''ОПИСАНИЕ''' |
− | Команда [[lindex]] считает '''list'' [[Tcl]]-списком и возвращает '''index''-ный элемент этого списка. Для '''index'' значение 0 соответствует первому элементу списка, а значение end - последнему. При выполнении команды соблюдаются общие правила интерпретатора Tcl относительно фигурных скобок, двойных кавычек и обратного слеша, хотя подстановки переменных и команд не происходят. | + | Команда [[lindex]] считает '''list''' [[Tcl]]-списком и возвращает '''index'''-ный элемент этого списка. Для '''index''' значение 0 соответствует первому элементу списка, а значение end - последнему. При выполнении команды соблюдаются общие правила интерпретатора Tcl относительно фигурных скобок, двойных кавычек и обратного слеша, хотя подстановки переменных и команд не происходят. |
Если '''index''' отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента '''index''' равно end, команда возвращает последний элемент списка | Если '''index''' отрицательное число или больше или равно числу элементов, команда возвращает пустое значение. Если значение аргумента '''index''' равно end, команда возвращает последний элемент списка | ||
Строка 13: | Строка 13: | ||
В случае, если '''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] | ||
− | + | ||
# Вернет a2 | # Вернет a2 | ||
putlog [lindex $a 1] | putlog [lindex $a 1] | ||
− | + | ||
# Вернет b3 | # Вернет b3 | ||
putlog [lindex $lst 1 2] | putlog [lindex $lst 1 2] | ||
В данном примере, аргумент ''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] | ||
− | + | ||
# Вернет a2 | # Вернет a2 | ||
putlog [lindex $a 1] | putlog [lindex $a 1] | ||
− | + | ||
# Вернет b3 | # Вернет b3 | ||
putlog [lindex [lindex $lst 1] 2] | 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]] - замена элементов в списке | ||
+ | * [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