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

    文章

    1710

    浏览量

    88394
  • 代码
    +关注

    关注

    30

    文章

    4708

    浏览量

    68176

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

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

收藏 人收藏

    评论

    相关推荐

    TCL语言简述

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

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

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

    怎么vivado HLS创建IP

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

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

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

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

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

    如何创建MP3/MP4播放列表

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

    怎么AVR Studio5创建新工程

    怎么AVR Studio5创建新工程
    的头像 发表于 07-04 09:51 3503次阅读

    怎样Excel创建自定义子列表

    首先创建表!如果您不想将功能放在表,则此步骤是可选的。我们将使用标题和子标题列来显示操作
    的头像 发表于 12-11 14:53 9144次阅读
    怎样<b class='flag-5'>在</b>Excel<b class='flag-5'>中</b><b class='flag-5'>创建</b>自定义子<b class='flag-5'>列表</b>

    python列表的详细介绍

    的。 接下来的例子,我会向你演示,列表些特性和常用的方法。 1. 创建列表
    的头像 发表于 02-22 15:14 1340次阅读

    Python序列的列表类型介绍

    ] . 其中,10,20,30,40这些称为:列表a的元素。 注意: 字符串和列表都是序列类型,一个字符串是一个字符序列,
    的头像 发表于 03-08 17:27 1236次阅读

    Simulink如何创建Publisher

    创建Publisher 配置block,并向/location的节点发送条geomet
    的头像 发表于 11-15 17:32 556次阅读
    Simulink<b class='flag-5'>中</b>如何<b class='flag-5'>创建</b><b class='flag-5'>一</b><b class='flag-5'>个</b>Publisher

    Matlab创建Message方法

    服务类型创建空白消息。Msg块的输出是空白的ROS消息(总线信号)。 设置Class参数来选择ROS消息、服务请求和服务响应消息。这
    的头像 发表于 11-15 18:18 754次阅读
    Matlab<b class='flag-5'>中</b><b class='flag-5'>创建</b><b class='flag-5'>一</b><b class='flag-5'>个</b>Message方法

    python怎么创建二维数组

    如何创建二维数组Python常见的问题。Python
    的头像 发表于 11-21 15:10 3528次阅读

    python怎样让列表里的数相加

    Python是种功能强大的编程语言,可以用于处理各种各样的数学运算和数据操作。Python,我们可以使用简单的代码将列表的数字相加。
    的头像 发表于 11-22 09:53 1754次阅读

    python如何修改列表的每一个值数据

    Python,我们可以使用不同的方法来修改列表的每一个值数据。 方法:使用for循环遍历
    的头像 发表于 11-29 17:03 4674次阅读