вставка символів на початку та в кінці рядка


100

Я новачок і намагаюся знайти спосіб вставити ряд L на початок і кінець рядка. Отже, якщо у мене є рядок, який говорить

"де я поставив кекс сьогодні вранці"

І я хочу вставити 1 л на початку і 2 л в кінці, так це виглядає так: "Де я поставив кекс сьогодні вранці LL" Як це зробити. спасибі

Відповіді:


132

Рядки незмінні, тому ви не можете вставити символи в існуючий рядок. Вам потрібно створити новий рядок. Ви можете використовувати конкатенацію рядків, щоб робити те, що хочете:

yourstring = "L" + yourstring + "LL"

Зверніть увагу, що ви також можете створити рядок з n Ls, використовуючи множення:

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
У другому прикладі використання лише одного аргументу для .format "0" є непотрібним, чи не так?
quapka

@quapka: Це необхідно, якщо код повинен бути сумісним з Python 2.6
Хуберт Каріо

26

Ви також можете використовувати приєднання:

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

Результат:

>>> yourstring
'LyourstringLL'

9

Якщо ви хочете вставити інший рядок де-небудь ще в існуючому рядку, ви можете скористатися методом виділення нижче.

Персонаж, що телефонує на другій позиції:

>>> 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

Додаючи відповідь C2H5OH , у Python 3.6+ ви можете використовувати рядки формату, щоб зробити його трохи чистішим:

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

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 за введенням користувачем. Там, якщо користувач вводить рядок із двома словами, я хочу надрукувати слово з + між ними

Приклад

key = input("Enter the product :")

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

print (URL)

User input: iphone 11

Для вищевказаного коду я отримую URL-адресу " http://exmaple.com/iphone 11"

Але я хочу надрукувати URL-адресу як " http://exmaple.com/iphone+11 "

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.