Как напечатать конкатенацию некоторых операций в TCL - PullRequest
0 голосов
/ 04 апреля 2011

Скажем, есть такой код:

set val "Hello"
set listA {}

lappend listA 6 7

Теперь я хочу поставить следующее:

puts "${val} user! Your list contains two values. First is [lindex $listA 0] and the second is [lindex $listA 1]"

Как я могу это сделать?

Ответы [ 2 ]

4 голосов
/ 04 апреля 2011

Я не совсем уверен, правильно ли я понял. Но то, что вы сделали, должно работать с небольшой модификацией:

set val "Hello"
set listA {6 7}
# or:
# set listA {}
# lappend listA 6 7
puts "${val} user! Your list contains two values. First is [lindex $listA 0] and the second is [lindex $listA 1]"

Дает вывод:

Hello user! Your list contains two values. First is 6 and the second is 7
1 голос
/ 04 апреля 2011

Хорошо, я нашел ответ. Проблема заключалась в том, что в моем реальном коде я использовал символы «[» и «]» как строку, но без «\».

Так что мне нужно написать:

puts "Zone No ${key} has Range\[ [lindex $value 0] - [lindex $value 1] \]"

Извините за вопрос.

...