在字符串的开头和结尾插入字符

时间:2012-04-08 00:45:49

标签: python

我是新手并试图找到一种方法在字符串的开头和结尾插入一些L's。所以,如果我有一个字符串,说

“今天早上我把蛋糕放在哪里”

我想在开始时插入1 L,在最后插入2 L',所以它看起来像是:“我今晚把我的蛋糕放在哪里LL”我该怎么做。谢谢

8 个答案:

答案 0 :(得分:108)

字符串是不可变的,因此您无法在现有字符串中插入字符。您必须创建一个新字符串。您可以使用字符串连接来执行您想要的操作:

yourstring = "L" + yourstring + "LL"

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

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

答案 1 :(得分:24)

为了完整性以及其他答案:

yourstring = "L%sLL" % yourstring

或者,更向前兼容Python 3.x:

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

答案 2 :(得分:19)

您也可以使用join:

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

结果:

>>> yourstring
'LyourstringLL'

答案 3 :(得分:4)

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

在第二个位置呼叫角色:

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

调用开始和结束位置的范围:

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

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

>>> s[:6]
'012345'

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

>>> s[4:]
'456789'

将您的字符串插入第5位。

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

同样s相当于s[:]

根据您的问题,您可以使用所有字符串,即

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

或如果"L"是其他字符串(例如我将其称为l),那么您可以使用该代码:

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

答案 4 :(得分:1)

假设我们有一个名为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"

答案 5 :(得分:0)

除了添加到C2H5OH's answer之外,在Python 3.6及更高版本中,您可以使用格式字符串使其更加简洁:

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

答案 6 :(得分:0)

我正在通过用户输入呈现URL。如果用户输入包含两个单词的字符串,我想在中间用+来打印单词

示例

key = input("Enter the product :")

URL = "http://exmaple.com/"

print (URL)

User input: iphone 11

对于上面的代码,我得到的网址为“ http://exmaple.com/iphone 11”

但是我想将URL打印为“ http://exmaple.com/iphone+11

答案 7 :(得分:0)

您可以为此使用 f 字符串

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

您可以将 10 替换为您想在字符串中放入 L 的次数 最后你也可以这样做

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