Python格式化字符串中:>符号的作用是什么?
Python f-string 里
:> 到底干啥用? 你碰到的:>是Python格式化字符串(f-string)里的右对齐排版指令,拆开来解释:
:是开启格式化规则的标记,后面跟着对齐方式、显示宽度、数据格式这些参数>就是「右对齐」:当内容的字符数没到指定的最小宽度时,左边补空格(也可以指定其他填充字符),让内容靠右边显示>后面的数字是要求的最小显示宽度(字符总数),如果内容本身比这个宽度长,就直接显示完整内容,不会截断- 最后面的
f、d是数据格式:f对应浮点数(默认保留6位小数),d对应整数
拿你的测试代码和输出对应看:
{loss:>7f}f把4.6362635675转成6位小数的4.636264,刚好7个字符,和指定的最小宽度一致,所以右对齐后直接显示,没有多余空格
{current:>5d}current=3只有1个字符,最小宽度要求5,所以左边补4个空格,变成3,这就是你输出里看到的效果
{size:>5d}size=46323656有8个字符,比指定的5宽,所以直接显示完整数字,不受宽度限制
另外那段{(100*correct):>0.1f}里的0是填充字符,替代默认的空格,意思是宽度不够时左边补0。比如如果算出来的准确率是95,95.0是4个字符,要是指定宽度5,就会输出095.0。
说白了,:>就是用来让输出的内容在指定宽度内靠右对齐,训练日志里用这个能让loss、进度这些数字对齐,看起来整整齐齐的。
内容的提问来源于stack exchange,提问作者Nav
相关产品推荐
相关产品推荐

