bir dizenin başına ve sonuna karakterler eklemek


106

Yeniyim ve bir dizenin başına ve sonuna bir dizi L eklemenin bir yolunu bulmaya çalışıyorum. Yani söyleyen bir dizem varsa

"bu sabah kekimi nereye koydum"

Ve başlangıca 1 L ve sonuna 2 L eklemek istiyorum, bu yüzden şöyle görünüyor: "Bu sabah kekimi nereye koydumLL" Bunu nasıl yaparım. teşekkür ederim

Yanıtlar:


136

Dizeler değişmezdir, bu nedenle mevcut bir dizeye karakter ekleyemezsiniz. Yeni bir dizi oluşturmalısınız. İstediğinizi yapmak için dize birleştirmeyi kullanabilirsiniz:

yourstring = "L" + yourstring + "LL"

Ayrıca Lçarpmayı kullanarak n s ile bir dize oluşturabileceğinizi unutmayın :

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

30

Diğer cevaplarla birlikte eksiksizlik için:

yourstring = "L%sLL" % yourstring

Veya Python 3.x ile daha uyumlu:

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

3
İkinci örnek için, .format için yalnızca bir bağımsız değişken kullanmak '0' gereksizdir, değil mi?
quapka

@quapka: Kodun Python 2.6 ile uyumlu olması gerekiyorsa gereklidir
Hubert Kario

26

Ayrıca katılmayı da kullanabilirsiniz:

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

Sonuç:

>>> yourstring
'LyourstringLL'

10

Mevcut dizgede başka bir yere başka bir dizge eklemek isterseniz, aşağıdaki seçim yöntemini kullanabilirsiniz.

İkinci pozisyonda çağıran karakter:

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

Başlangıç ​​ve bitiş konumu ile arama aralığı:

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

Bu konumdan önce dizenin bir kısmını çağırmak:

>>> s[:6]
'012345'

Bu konumdan sonra bir dizenin bir kısmını çağırmak:

>>> s[4:]
'456789'

Dizinizi 5. konuma yerleştirmek.

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

Ayrıca seşdeğerdir s[:].

Sorunuzla birlikte tüm dizinizi kullanabilirsiniz, yani

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

veya "L"başka bir dize ise (örneğin ben onu ad olarak adlandırıyorum l), o zaman bu kodu kullanabilirsiniz:

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

4

Ekleme C2H5OH cevabı Python, 3.6+ biçim dizeleri kullanabilirsiniz bunu biraz temiz hale getirme:

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

2

Diyelim ki sizin dizeniz adında bir dizimiz var:

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

Kullanıcı girişine göre bir URL oluşturuyorum. Kullanıcı iki kelimeli bir dize girerse, kelimeyi arada + ile yazdırmak istiyorum

Misal

key = input("Enter the product :")

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

print (URL)

User input: iphone 11

Yukarıdaki kod için " http://exmaple.com/iphone 11" olarak bir URL alıyorum

Ancak URL'yi " http://exmaple.com/iphone+11 " olarak yazdırmak istiyorum

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.