как вы можете написать это в python? - PullRequest
0 голосов
/ 16 января 2020

Я не могу решить эту практику, помогите мне, если вы можете запросить создание функции, которая получает 2 строки, то:

1-если строки одинаковы: return 0

2- если при добавлении или удалении только символа из строки 1 он становится похожим на строку 2 (означает, что они становятся одинаковыми): возвращает 1 (добавление или удаление символа НЕ заменяет)

3 - если часть 1 или 2 могут ' должно быть сделано: возврат 2

1 Ответ

0 голосов
/ 17 января 2020

Не ясно, хотите ли вы этого, но я сделал следующее:

  • Если строки равны, возвращаем 0
  • Если мы берем более длинную строку и удаляем любой один символ, который мы получаем во второй строке, возвращаем 1, иначе возвращаем 2

Код для этого:

def strdiff(s1,s2):
    if(s1==s2):
        return 0
    if(len(s1)>len(s2)):
        for i in range(len(s1)):
            if(s1[0:i]+s1[i+1:len(s1)]==s2):
                return 1
    elif(len(s2)>len(s1)):
        for i in range(len(s2)):
            if(s2[0:i]+s2[i+1:len(s2)]==s1):
                return 1
    else:
        return 2


print(strdiff("asasd","aasd"))

Результат из этого был 1. И, кажется, соответствует вашим требованиям требований .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...