问题:
>>> a="1"
>>> b="一"
>>> print(a.ljust(10,"-")+"O")
1---------O
>>> print(b.ljust(10,"-")+"O")
一---------O
ljust()
语法:str.ljust(width[, fillchar])
原因:
python在补齐长度时“一“所占的字节为1
而在GBK中”一“所占的字节数是2
因此造成了错位
解决:
我们可以根据输入内容的不同调节width的值
像这样
但是一点一点去调试太麻烦
我们可以列一个关系式
width=10-len(a.encode(“GBK”))+len(a)
原理:
然后输出
print(a.ljust(width))
成果如下
我们也可以使用format方法(原理同上)
这是一个资源类公众号,包含软件库,游戏库,以及考研资料。
希望能帮助到你 _