“第10届量子化学波函数分析与Multiwfn程序培训班将于5月4-8日于北京举办,这是一次性完整、系统学习波函数分析的各种理论知识和全面掌握强大的Multiwfn波函数分析程序使用的最不可错过的机会!请点击此链接查看详情和报名方式,欢迎参加!

“第18届北京科音分子动力学与GROMACS培训班” 将于5月23-26日于北京举办。这是一次性全面、系统学习分子动力学模拟知识和最流行的分子动力学程序GROMACS的关键机会!报名正在进行中,请点击此链接查看详情,欢迎参加!

计算化学公社

 找回密码 Forget password
 注册 Register
Views: 1224|回复 Reply: 2
打印 Print 上一主题 Last thread 下一主题 Next thread

[综合交流] tcl脚本中列表元素操作求助

[复制链接 Copy URL]

43

帖子

0

威望

831

eV
积分
874

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
请问各位老师,tcl脚本中我该如何将列表{1 2 3 4}依次变成
{1+100*1 2+100*1 3+100*1 4+100*1}
.....
{1+100*29 2+100*29 3+100*29 4+100*29}
呢?
我的思路如下,但是好像tcl中没法直接将整个列表所有元素同时加一个数:
set number {1 2 3 4 5}
for {set i 1} {$i <= 29} {incr i}{
    expr $number + 100 * i
}

316

帖子

2

威望

4013

eV
积分
4369

Level 6 (一方通行)

2#
发表于 Post on 2023-4-15 11:37:14 | 只看该作者 Only view this author
vecadd可以矢量相加,如果元素不多,可以如下:
  1. set number {1 2 3 4 5}
  2. for {set i 1} {$i <= 29} {incr i} {
  3.     set val [expr 100 * $i]
  4.     set new  [vecadd $number "$val $val $val $val $val"]
  5.     puts $new
  6. }
复制代码


如果元素不止5个,把后面那个用循环创建一个list就好了

43

帖子

0

威望

831

eV
积分
874

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2023-4-15 14:17:12 | 只看该作者 Only view this author
lyj714 发表于 2023-4-15 11:37
vecadd可以矢量相加,如果元素不多,可以如下:

学到了,谢谢您!

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-4-15 15:45 , Processed in 0.185764 second(s), 20 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list