143

私は新しく、文字列の最初と最後にいくつかの L を挿入する方法を見つけようとしています。したがって、次のような文字列がある場合

「今朝、カップケーキをどこに置きましたか」

そして、最初に 1 つの L を挿入し、最後に 2 つの L を挿入したいので、次のようになります。ありがとうございました

4

7 に答える 7

171

文字列は不変であるため、既存の文字列に文字を挿入することはできません。新しい文字列を作成する必要があります。文字列連結を使用して、必要なことを行うことができます。

yourstring = "L" + yourstring + "LL"

L乗算を使用して、 n で文字列を作成することもできることに注意してください。

m = 1
n = 2
yourstring = ("L" * m) + yourstring + ("L" * n)
于 2012-04-08T00:47:09.790 に答える
33

他の回答とともに完全を期すために:

yourstring = "L%sLL" % yourstring

または、Python 3.x との上位互換性:

yourstring = "L{0}LL".format(yourstring)
于 2012-04-08T01:06:46.707 に答える
32

結合も使用できます。

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

結果:

>>> yourstring
'LyourstringLL'
于 2012-04-08T01:00:20.783 に答える
12

既存の文字列の別の場所に別の文字列を挿入する場合は、以下の選択方法を使用できます。

2 番目の位置の呼び出し文字:

>>> 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)
于 2016-12-28T13:39:45.543 に答える
2

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"
于 2015-05-29T01:37:50.570 に答える