lassign
Имя
lassign — Присвоить элементы списка переменнымСинопсис
lassign list ?varName ...?Описание
Эта команда обрабатывает значение list как список и присваивает последовательные элементы из этого списка переменным, заданным аргументами varName по порядку. Если количество имен переменных больше, чем элементов списка, оставшиеся переменные устанавливаются в пустую строку. Если элементов списка больше, чем переменных, возвращается список не присвоенных элементов.Примеры
Иллюстрация того, как работает многократное присваивание, и что происходит, когда элементов либо недостаточно, либо слишком много.lassign {a b c} x y z ;# Empty return
puts $x ;# Prints "a"
puts $y ;# Prints "b"
puts $z ;# Prints "c"
lassign {d e} x y z ;# Empty return
puts $x ;# Prints "d"
puts $y ;# Prints "e"
puts $z ;# Prints ""
lassign {f g h i} x y ;# Returns "h i"
puts $x ;# Prints "f"
puts $y ;# Prints "g" Команда lassign имеет другие применения. Она может использоваться для создания аналога команды «shift» во многих языках оболочек, например, так:
set ::argv [lassign $::argv argumentToReadOff]
См. также
lindex, list, lrange, lset, set
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TclCmd/lassign.htm
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TclCmd/lassign.htm