我有一个代码,其输出应如下所示:
hello 3454
nice 222
bye 45433
well 3424
对齐和正确的理由给我带来了问题。
我在字符串 {0:>7} 中尝试了此操作,但只有具有特定位数的数字才可以。其他有一些数字的数字或多或少会变得混乱。很明显可以理解他们为什么会搞砸,但我很难找到解决方案。我不想只为了这样一个小问题而到处使用常量和 if 语句。有任何想法吗?
你可以尝试:
"{:>10d}".format(n)
其中 n 是要向左填充数字的 int,并且
"{:>10s}".format(s)
,其中 s 是要向左填充字符串的字符串
编辑:选择 10 是任意的。我建议首先确定最大长度。
但我不确定这是否是你想要的..
无论如何,此链接包含一些有关字符串格式的信息:
字符串格式化 http://mkaz.com/solog/python/python-string-format.html
你可以试试这个:
def align(word, number):
return "{:<10s}{:>10d}".format(word, number)
这将用 10 个空格填充您的字符串,并用 10 个空格填充您的数字,从而给出所需的结果
例子:
align('Hello', 3454)
align('nice', 222)
align('bye', 45433)
align('well', 3424)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)