Tcl常用命令备忘录-format与scan

news/2024/12/2 14:51:41/

  

format

语法:format formatString arg arg ...

参数介绍:

  • formatString:格式化字符串,使用各种标识符和修饰符进行格式化。
  • arg:被格式化的变量或字符串。

Tcl语言中的format命令可以用来格式化字符串输出,常用的语法如下:

1、普通字符串输出:

set str "hello"
puts [format "%s" $str] ;# 输出 hello

2、整数输出:

set num 123
puts [format "%d" $num] ;# 输出 123

3、浮点数输出:

set fnum 3.141592653
puts [format "%.2f" $fnum] ;# 输出 3.14

4、字符输出:

set char "a"
puts [format "%c" $char] ;# 输出 a

5、八进制输出:

set onum 64
puts [format "%o" $onum] ;# 输出 100

6、十六进制输出:

set hnum 255
puts [format "%x" $hnum] ;# 输出 ff

7、对齐输出:

set name "Tom"
set age 18
puts [format "%-10s: %3d" $name $age] ;# 输出 Tom       :  18

其中,%-10s表示左对齐的字符串,占用10个字符的宽度;%3d表示右对齐的整数,占用3个字符的宽度。

8、插值输出:

set name "Tom"
set age 18
puts [format "My name is ${name}, I'm ${age} years old."] ;# 输出 My name is Tom, I'm 18 years old.

其中,${name}和${age}表示插值输出,将变量的值插入到字符串中。

scan

语法:scan string formatString varName varName ...

参数介绍:

  • string:被解析的字符串。
  • formatString:格式化字符串,使用各种标识符和修饰符进行解析。
  • varName:解析结果被存储的变量名称。

示例:

set str "123 456"
scan $str "%d %d" num1 num2
puts "The numbers are: $num1, $num2"

输出:

The numbers are: 123, 456

示例解释:

第一行通过set命令将字符串"123 456"赋值给变量$str。第二行使用scan命令,将字符串$str按照指定格式进行解析,并将解析结果存储在变量$num1和$num2中。第三行拼接输出解析结果。


http://www.ppmy.cn/news/452330.html

相关文章

python Flask web项目uwsgi + nginx部署

1.安装python 略 2.虚拟环境 2.1安装vertualenv pip3 install virtualenv2.2创建虚拟环境 创建保存环境的目录: mkdir venvs创建虚拟环境: [rootroot /]# virtualenv /home/xxx/venvs/flask2 --pythonpython3查看虚拟环境: [rootroot…

给我写一份拜尔包含品牌故事以及情怀的介绍

好的,我会写一份关于 Baellerry 的介绍。 Baellerry 是一个专注于高品质钱包、皮具和时尚配件的品牌。该品牌成立于 2013 年,总部位于中国,并已在全球多个国家和地区设有分支机构。 Baellerry 的品牌情怀是以人为本,为消费者提供优…

Bayer域去噪:从信号角度分析位置设置原因

Bayer域去噪:从信号角度分析位置设置原因 Bayer域去噪的ISP位置关于ISP流程中的AWB中参数的说明 Bayer域去噪的ISP位置 首先是关于位置的说明,网上找了好多ISP流程,感觉五花八门,没有一个是当前实际使用的顺序。这里确定位置&…

扯犊子的CPI

最近看了一本关于金融的书,比较通俗,再次勾起了我对金融的兴趣,于是想搞清楚一些之前一知半解的概念,所以,我就先找了一个书中对我感官冲击最大的概念,做了一点点研究,得到的结果并不让人开心&a…

书单来了!大厂的技术牛人在读什么:腾讯篇

点击蓝色“程序员书单”关注我哟 加个“星标”,每天带你看好文,读好书! ​ 腾讯技术团队推荐书单 《应用密码学:协议、算法与 C 源程序》 [美] Bruce Schneier ​ 密码学的应用领域远远不只是编码和解码信息,要了…

灰度相机与彩色相机的成像原理

无论是CCD还是CMOS,其原理都是将光子转换为电子,其中光子数目与电子数目成比例。对每个像素,统计其电子数目就形成反映光线强弱的灰度图像。                                       图1. 根据电子数目…

【AI数学原理】概率机器学习(三):拉普拉斯修正

朴素贝叶斯分类器需要通过拉普拉斯修正来提高其鲁棒性。 本文需要上一篇博文的基础:【AI数学原理】概率机器学习(二):朴素贝叶斯分类器 为什么不用拉普拉斯修正的NB分类器鲁棒性不理想呢?主要还是疏于考虑这种情况&am…

Bayer阵列的由来及原理简介

Bayer阵列是什么? 所谓拜耳阵列指的是CCD或者CMOS器件作为光传感器的时候,采集数字图像时用到的一种常见的方法。 下图为一种常见的BGGR的阵列排布方式: Bayer阵列发明者 Bayer阵列的发明者——柯达公司工程师Bryce Bayer。 为什么需要Baye…