3

假设我有一些字符串标题:

title0 = 'USA'
title1 = 'Canada'

我想在这些标题的前面和后面附加一个“#”字符列表,给它们一个恒定的长度,所以它们看起来像:

######## USA ########
####### Canada ######

用 1 个空格缓冲文本的开头和结尾。显然,我不能总是在单词周围得到对称数量的符号。有没有办法通过内置的 Python 字符串格式来做到这一点?

4

1 回答 1

7

Pythonstr.format()有一些选项可以满足您的需求。你可以在这里阅读更多关于它们的信息。这应该给你你想要的。

title0 = '{:#^{width}}'.format(' USA ', width=19)
title1 = '{:#^{width}}'.format(' Canada ', width=19)

或者对新的 f-strings/formatted string literals使用类似的语法:

width = 19
country = 'USA'
title0 = f'{country:#^{width}}'
于 2013-05-02T18:08:25.803 回答