Python | 格式化输出字符串

 时间:2026-04-23 16:12:01

1、我们先来看一下下面这部分代码。看起来这是一份无懈可击的代码了,所有的打印输出都是用相同的format函数,并且每行字符的长度(还是个数?)都是相同的20

Python | 格式化输出字符串

2、然而,通过运行代码,观察结果,我们发现,现实跟预想有差距。

我们发现,所有含中文的格式化字符串的输出在“长度”上都比英文字符要短。所以我们有理由推测,format函数里面的20表示的是字节数。因为,一个汉字是两个字节的

Python | 格式化输出字符串

3、所以按照上面的推测,我们重新调整了包含汉字的输出代码:

对11行代码因为有3个汉字,把需要的字节数增加到23

对12行代码因为有2个汉字,把需要的字节数增加到22

测试的结果,可以说,是完美的:)

Python | 格式化输出字符串

1、现在我们回到原来的问题。我们看到,问题中的格式问题其实就是我们在上面的测试中发现的因中文引起的问题。

Python | 格式化输出字符串

2、考虑到代码中使用了两种格式化字符串技术,为了方便起见(简单~),我们先调整一下代码,把代码转换为使用format函数的写法

Python | 格式化输出字符串

3、好,现在我们按照测试的时候的方法,对于包含中文的字符串,增加打印的字节数。表头表尾也不能忍,也一并改了。效果棒棒哒~

Python | 格式化输出字符串

Python | 格式化输出字符串

4、我们再一次review代码,发现第三个的占位符里面有多余的代码,于是删除了。发现删除后内容部分最后一行的对齐方式发生了变化,还是汉字字数的问题,再调整!

Python | 格式化输出字符串

Python | 格式化输出字符串

5、好,现在我们的问题在这里是解决了,完全的!

Python | 格式化输出字符串

  • OLAP分析工具如何设置过滤指标条件
  • Python如何遍历字典中所有键
  • 用于将参数化的SQL语句发送到数据库的方法
  • 汇编语言程序设计:[14]系统时间显示
  • javafx如何使用Text
  • 热门搜索
    白带像鼻涕一样怎么回事 滞报金怎么算 宝宝发型 我的世界鱼怎么养 深圳少儿医保怎么办理 怎么样去黑眼圈 我的世界怎么建城堡 纽约大都会博物馆 中华车怎么样 小孩牙齿有洞怎么办