0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

在Tcl中创建一个新的列表

电子工程师 来源:未知 作者:李倩 2018-11-20 10:11 次阅读

列表是Tcl语言中最重要的一种数据结构。什么是列表?列表是元素的有序集合,各个元素可以包含任何字符串,例如空格,反斜杠,换行符等。列表表现为特定结构的字符串,这意味着可以把它们赋值给一个变量,可以把它们做为参数传给命令,可以把它们嵌套到其他列表中。

在Tcl中创建一个新的列表是很容易的。可通过如下几种方法。

01

直接利用花括号{}创建

如图1所示,通过花括号的方式创建列表赋给变量a,列表长度为3(可通过llength查询列表长度,后续会介绍)

图1

02

通过list命令创建

list本身就是一个Tcl命令,因此在与set一起使用时就要用到命令置换符[]。创建与图1相同的列表,采用list命令如图2所示。

图2

03

通过concat命令创建列表

concat的参数可以是任意多个列表,从而实现列表的拼接。如图3所示,利用concat命令将图1的列表a与图2的列表b拼接为新的列表赋给c。图4显示了concat拼接3个列表,其中第一个列表是空列表。

图3

图4

04

通过lrepeat命令创建列表

lrepeat命令接收两个参数,第一个参数是重复次数,第二个参数是重复值。如图5所示,lrepeat创建了一个长度为4的列表,该列表中包含4个“**”。

图5

05

创建空列表

所谓空列表是指该列表是存在的,但不包含任何值。通常创建空列表用于列表初始化。可通过{}直接创建空列表,也可通过list命令创建空列表。

结论

尽管有多种方法创建列表,但从Tcl代码风格的角度看,通过list命令创建列表是最为稳妥的方法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • TCL
    TCL
    +关注

    关注

    10

    文章

    1654

    浏览量

    87892
  • 代码
    +关注

    关注

    30

    文章

    4536

    浏览量

    66496

原文标题:列表:创建列表

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    TCL语言简述

    ;并且它在交互式程序之间提供简单但强力的通信机制  作为种脚本语言,Tcl具有简单的语法  Tcl/Tk 的发明人 John Oust
    发表于 04-16 09:20

    WEBENCH电源设计工具创建Fly-Buck转换器

    方法,你需要确定打算在Fly-Buck设计中使用的器件。比如说,你打算在Fly-Buck设计中使用LM5160。LM5160产品文件夹,你将会找到
    发表于 09-04 14:39

    怎么Vivado 2015.3创建

    问题的论坛,我遇到了另一个遇到相同问题的帖子。该帖子创建库将有助于绕过此问题。我一直在尝试创建
    发表于 04-15 12:38

    创建列表框之后就不会创建列表

    我有包含状态机的函数。从主循环重新输入函数以连续地重复该函数。函数将项目添加到列表。当我最初函数中有
    发表于 09-26 12:36

    如何在绑定设备列表实现FIFO策略?

    我试图绑定设备列表实现FIFO策略:当列表满时,最旧的绑定设备将被删除,新的绑定设备将*
    发表于 10-30 07:20

    怎么vivado HLS创建IP

    你好我正在尝试vivado HLS创建IP,然后vivado中使用它每次我运行Expo
    发表于 04-03 08:48

    怎么vivado创建coe文件?

    让我知道vivadozed fpga创建coe文件,是否可以project / srcs目录中找到它
    发表于 04-15 10:04

    JTAG-to_AXI IP创建了具有832位数据是真是假?

    整个内存。然后将读取的数据保存到第二文件。然后我可以比较两文件以确认内存保存正确的数据。内存将是16K深,因此需要循环(从文件1读取循环,运行写入事务,运行读取事务和写入文件2)。我认为这是许多人都会使用的使用模式。是否有
    发表于 05-20 09:11

    【创龙TLZ7x-EasyEVM评估板试用连载】02 TCL文件导入创建工程与PL部分LED例程测试

    控制台,如上图所示。其次进入.tcl的目录,如下图:导入.tcl并输入芯片信号: 之后就创建工程,生成的工程放在了刚刚进入目录下面的r
    发表于 06-01 09:14

    tcl脚本属于UG480,XADC参考设计不会创建项目文件?

    嗨,大家好tcl脚本属于UG480,XADC参考设计不会创建项目文件。我做了什么:光盘来源* .tcl这是我github上用于digilent的其他参考设计的方式。谁能表明正确的方法
    发表于 08-17 09:04

    如何创建单片机最小系统呢

    这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入段漂亮的代码片生成适合你的
    发表于 12-01 07:23

    Vivado图形化界面IDE运行和调试Tcl命令

    管脚到内部的线长也需要考虑。fpga工程师可以vivado的Tcl Console执行tcl命令,生成对应器件的trace length文件提供给硬件工程师。具体命令如下:第
    发表于 06-17 14:52

    如何从设计器/代码滚动列表创建多种类型的小部件/按钮?

    和几个按钮和几个文本框等。只是为了看起来像 android 应用程序设置屏幕。有人可以建议我如何从设计器/代码滚动列表
    发表于 12-30 07:37

    TCL 定制 Vivado 设计实现流程

    在于可以通过 Vivado 创建工程的方式管理整个设计流程,包括工程文件的位 置、阶段性关键报告的生成、重要数据的输出和存储等。 如下左图所示,用户建立了
    发表于 06-28 19:34

    如何创建MP3/MP4播放列表

    如何创建MP3/MP4播放列表 使用MP3播放器,用户可以创建播放列表,从他们自己的光盘中挑选自己想要听的歌曲。用户手头上可能有数百或数千首音乐
    发表于 02-03 11:55 4218次阅读