文字列の最初と最後に文字を挿入する


100

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

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

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

回答:


132

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

yourstring = "L" + yourstring + "LL"

L乗算を使用してn sの文字列を作成することもできます。

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

27

他の回答と一緒に完全にするために:

yourstring = "L%sLL" % yourstring

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

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

3
2番目の例では、.formatの引数を1つだけ使用すると、 '0'は不要になりますよね?
quapka 2014年

@quapka:コードにPython 2.6との互換性が必要な場合は必要です
Hubert Kario

26

結合を使用することもできます:

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

結果:

>>> yourstring
'LyourstringLL'

9

他の文字列を既存の文字列のどこかに挿入したい場合は、以下の選択方法を使用できます。

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)


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"

0

ユーザー入力によってURLをレンダリングしています。ユーザーが2つの単語を含む文字列を入力した場合、間に+を付けて単語を印刷したい

key = input("Enter the product :")

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

print (URL)

User input: iphone 11

上記のコードの場合、「http://exmaple.com/iphone 11」というURLを取得します

しかし、URLを " http://exmaple.com/iphone+11 " として印刷したい

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.