Я знаю, что могу нарезать строку в Python, используя нотацию массива: str[1:6]
, но как мне ее соединить? т.е. заменить str[1:6]
на другую строку, возможно, на другую длину?
Как я могу соединить строку?
Ответ 1
Nevermind. Думал, что может быть встроенная функция. Вместо этого написано:
def splice(a,b,c,d=None):
if isinstance(b,(list,tuple)):
return a[:b[0]]+c+a[b[1]:]
return a[:b]+d+a[c:]
>>> splice('hello world',0,5,'pizza')
'pizza world'
>>> splice('hello world',(0,5),'pizza')
'pizza world'
Ответ 2
Строки неизменяемы в Python. Лучшее, что вы можете сделать, это построить новую строку:
t = s[:1] + "whatever" + s[6:]
Ответ 3
Вы не можете сделать это, поскольку строки в Python неизменяемы.
Попробуйте следующее:
new_s = ''.join((s[:1], new, s[6:]))
Ответ 4
Строки Python неизменяемы, вам нужно вручную:
new = str[:1] + new + str[6:]
Ответ 5
Как насчет таких попыток?
>>> str = 'This is something...'
>>> s = 'Theese are'
>>> print str
This is something...
>>> str = str.replace(str[0:7], s)
>>> print str
Theese are something...