我是新手并试图找到一种方法在字符串的开头和结尾插入一些L's。所以,如果我有一个字符串,说
“今天早上我把蛋糕放在哪里”
我想在开始时插入1 L,在最后插入2 L',所以它看起来像是:“我今晚把我的蛋糕放在哪里LL”我该怎么做。谢谢
答案 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)