将字符串格式化为仅在 python 中的单词之间有 n 个空格
Format a string to have n spaces only between words in python
我正在处理非空白字符之间具有不同数量空格的字符串。问题是这个字符串构成了一个类别,它们必须相等。我想将它们格式化为在非空白字符 f.e 之间具有完全相同数量的空格。 1
,但如果可能的话,这可以推广为插入更多空格。而且首尾不能有空格
带有n=1
的示例:
'a b b' => 'a b c'
' a b c ' => 'a b c'
只需 split
它和 join
结果列表 space(es)
>>> " ".join('a b b'.split())
'a b c'
>>> " ".join(' a b c '.split())
'a b c'
来自 str.split(sep)
文档:
If sep is not specified or is None, a different splitting algorithm is
applied: runs of consecutive whitespace are regarded as a single
separator, and the result will contain no empty strings at the start
or end if the string has leading or trailing whitespace.
我们yourstring.strip()
让字符串从开始到结束结束空格。您可以根据需要在字符串上使用 join()
来格式化字符串。希望对你有帮助。
最简单的方法是使用 split
和 join
。
>>> (' '*n).join(s.split())
注意:' '*n
只是为了方便,以防需要在中间加入许多空格。
#驱动程序值:
IN : s = 'a b b'
n = 1
OUT : 'a b b'
IN : s = ' a b c '
n = 2
OUT : 'a b c'
试试这个。
def spaces_btw_characters(word, spaces):
return (' '*spaces).join(word.split())
我正在处理非空白字符之间具有不同数量空格的字符串。问题是这个字符串构成了一个类别,它们必须相等。我想将它们格式化为在非空白字符 f.e 之间具有完全相同数量的空格。 1
,但如果可能的话,这可以推广为插入更多空格。而且首尾不能有空格
带有n=1
的示例:
'a b b' => 'a b c'
' a b c ' => 'a b c'
只需 split
它和 join
结果列表 space(es)
>>> " ".join('a b b'.split())
'a b c'
>>> " ".join(' a b c '.split())
'a b c'
来自 str.split(sep)
文档:
If sep is not specified or is None, a different splitting algorithm is applied: runs of consecutive whitespace are regarded as a single separator, and the result will contain no empty strings at the start or end if the string has leading or trailing whitespace.
我们yourstring.strip()
让字符串从开始到结束结束空格。您可以根据需要在字符串上使用 join()
来格式化字符串。希望对你有帮助。
最简单的方法是使用 split
和 join
。
>>> (' '*n).join(s.split())
注意:' '*n
只是为了方便,以防需要在中间加入许多空格。
#驱动程序值:
IN : s = 'a b b'
n = 1
OUT : 'a b b'
IN : s = ' a b c '
n = 2
OUT : 'a b c'
试试这个。
def spaces_btw_characters(word, spaces):
return (' '*spaces).join(word.split())