LINUX.ORG.RU

История изменений

Исправление Psych218, (текущая версия) :

Первое, что пришло в голову:

def replaceone(s, oldpart, newpart, num):
    parts = s.split(oldpart, num)
    return oldpart.join(parts[:num]) + newpart + parts[num]

replaceone('раз два три тест три четыре тест пять тест шесть сем тест восемь', "тест", "foo", 3)
'раз два три тест три четыре тест пять foo шесть сем тест восемь'

По-хорошему, ещё бы не мешало проверять, не выходит ли num за пределы количества вхождений oldpart, но суть ясна.

Исправление Psych218, :

Первое, что пришло в голову:

def replaceone(s, oldpart, newpart, num):
    parts = s.split(oldpart, num)
    return oldpart.join(parts[:num]) + newpart + parts[num]

replaceone('раз два три тест три четыре тест пять тест шесть сем тест восемь', "тест", "foo", 3)
'раз два три тест три четыре тест пять foo шесть сем тест восемь'

По-хорошему, ещё бы не мешало проверять, не выходит ли num за пределы количества вхождений oldpart, но суть ясня.

Исправление Psych218, :

Первое, что пришло в голову.

def replaceone(s, oldpart, newpart, num):
    parts = s.split(oldpart, num)
    return oldpart.join(parts[:num]) + newpart + parts[num]

replaceone('раз два три тест три четыре тест пять тест шесть сем тест восемь', "тест", "foo", 3)
'раз два три тест три четыре тест пять foo шесть сем тест восемь'

По-хорошему, ещё бы не мешало проверять, не выходит ли num за пределы количества вхождений oldpart, но суть ясня.

Исправление Psych218, :

def replaceone(s, oldpart, newpart, num):
    parts = s.split(oldpart, num)
    return oldpart.join(parts[:num]) + newpart + parts[num]
replaceone('раз два три тест три четыре тест пять тест шесть сем тест восемь', "тест", "foo", 3)
'раз два три тест три четыре тест пять foo шесть сем тест восемь'

Исходная версия Psych218, :

def replaceone(s, oldpart, newpart, num):
    parts = s.split(oldpart, num)
    return oldpart.join(parts[:num]) + newpart + parts[num]
replaceone('раз два три тест три четыре тест пять тест шесть сем тест восемь', "тест", "foo", 3)
'раз два три тест три четыре тест пять foo шесть сем тест восемь'