我正在使用在非空白字符之间具有不同数量空格的字符串。问题是这些字符串形成一个类别,并且它们必须相等。我想将它们格式化为在非空白字符 fe 之间具有完全相同数量的空格1
,但这可以概括为如果可能的话插入更多空格。并且开头和结尾不应该有空格。
示例n=1
:
'a b b' => 'a b c'
' a b c ' => 'a b c'
我正在使用在非空白字符之间具有不同数量空格的字符串。问题是这些字符串形成一个类别,并且它们必须相等。我想将它们格式化为在非空白字符 fe 之间具有完全相同数量的空格1
,但这可以概括为如果可能的话插入更多空格。并且开头和结尾不应该有空格。
示例n=1
:
'a b b' => 'a b c'
' a b c ' => 'a b c'
简单地split
说它和join
空格的结果列表
>>> " ".join('a b b'.split())
'a b c'
>>> " ".join(' a b c '.split())
'a b c'
来自str.split(sep)
文档:
如果 sep 未指定或为 None,则应用不同的拆分算法:连续空格的运行被视为单个分隔符,如果字符串具有前导或尾随空格,则结果将在开头或结尾不包含空字符串。
最简单的方法是使用split
and 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())
我们yourstring.strip()
为字符串从开始和结束结束空格。您可以join()
根据需要在字符串上使用来格式化字符串。希望这对您有所帮助。