在字符串的开始和结束处插入字符

我是新的,并试图找到一种方法,以插入一个字符串的开始和结束的数字 L。如果我有一个字符串

“今天早上我把纸杯蛋糕放哪儿了”

我想在开头和结尾各插入一个 L,看起来就像: “今天早上我把我的纸杯蛋糕放哪儿了?”我该怎么做。谢谢你

621457 次浏览

字符串是不可变的,因此不能将字符插入到现有字符串中。您必须创建一个新字符串。您可以使用字符串连接来完成您想要的操作:

yourstring = "L" + yourstring + "LL"

注意,还可以使用乘法创建一个包含 n 个 L的字符串:

m = 1
n = 2
yourstring = ("L" * m) + yourstring + ("L" * n)

你也可以使用 join:

yourstring = ''.join(('L','yourstring','LL'))

结果:

>>> yourstring
'LyourstringLL'

以及其他答案的完整性:

yourstring = "L%sLL" % yourstring

或者,更加向前兼容 Python3.x:

yourstring = "L{0}LL".format(yourstring)

假设我们有一个字符串叫做 yourstring:

for x in range(0, [howmanytimes you want it at the beginning]):
yourstring = "L" + yourstring
for x in range(0, [howmanytimes you want it at the end]):
yourstring += "L"

如果要在现有字符串的其他位置插入其他字符串,可以使用下面的选择方法。

第二位呼叫角色:

>>> s = "0123456789"
>>> s[2]
'2'

具有起始和结束位置的呼叫范围:

>>> s[4:6]
'45'

在该位置之前调用字符串的一部分:

>>> s[:6]
'012345'

在该位置后调用字符串的一部分:

>>> s[4:]
'456789'

在第五个位置插入你的字符串。

>>> s = s[:5] + "L" + s[5:]
>>> s
'01234L56789'

而且 s等价于 s[:]

你的问题可以用你所有的字符串,即。

>>> s = "L" + s + "LL"

或者如果 "L"是一个其他的字符串(例如我称它为 l) ,那么你可以使用这个代码:

>>> s = l + s + (l * 2)

增加到 C2H5OH 的答案,在 Python 3.6 + 中,你可以使用格式字符串来使它更简洁:

s = "something about cupcakes"
print(f"L{s}LL")

可以使用 f 字符串

foo = "where did I put my cupcake this morning"
bar = 'L'
foobar = f'{bar*10}{foo}'
print(foobar)

你可以通过在字符串中放置 L 的次数来替换 10 为了结束,你也可以这样做

foo = "where did I put my cupcake this morning"
bar = 'L'
foobar = f'{bar*10}{foo}{bar*10}'
print(foobar)