편집 기록

편집 기록
  • 프로필 편집요청빌런님의 편집
    날짜2020.04.23

    파이썬 두개의 문자열을 비교해서 두개가 같거나 하나만 다른 문자열 구하기


    q3a(string1, string2)가 True이려면, string1과 string2의 length가 같고 한 자리만 다른 단어여야 합니다. 예를 들면, q3a("bat", "bet") 은 True, q3a('nat' , 'ant')은 False가 되어야 합니다. 지금 짠 코드는 여기까진데, string1 or string2가 5자리가 넘어가면 인덱스 에러가 떠서 질문드립니다. 간단한 loop 이외에는 쓸 수 없어요.

    def q3a(string1, string2):
        index = 0
    
        while index <= len(string1) and len(string2):
            if len(string1) == len(string2):
                if string1 == string2:
                    return True
    
                elif string1 != string2:
                    while index <= len(string1) and len(string2):
                        if string1[index] == string2[index]:
                            index = index + 1
                            if string1[index] != string2[index]:
                                index = index + 1
                                if string1[index] == string2[index]:
                                    return True
                                else:
                                    return False
    
                        elif string1[index] != string2[index]:
                            index = index + 1
                            if string1[index] == string2[index]:
                                index = index + 1
                                return True
                            elif string1[index] != string2[index]:
                                return False
                    index = index + 1
            else:
                return False
            index = index + 1
    
  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.02.15

    파이썬 두개의 문자열을 비교해서 두개가 같거나 하나만 다른 문자열 구하기


    q3a(string1, string2)가 True이려면, string1과 string2의 length가 같고 한 자리만 다른 단어여야 합니다. 예를 들면, q3a("bat", "bet") 은 True, q3a('nat' , 'ant') 은 False가 되어야 합니다. 지금 짠 코드는 여기까진데, string1 or string2가 5자리가 넘어가면 인덱스 에러가 떠서 질문드립니다. 간단한 loop 이외에는 쓸 수 없어요.

    def q3a(string1, string2): index = 0

    while index <= len(string1) and len(string2):
        if len(string1) == len(string2):
            if string1 == string2:
                return True
    
            elif string1 != string2:
                while index <= len(string1) and len(string2):
                    if string1[index] == string2[index]:
                        index = index + 1
                        if string1[index] != string2[index]:
                            index = index + 1
                            if string1[index] == string2[index]:
                                return True
                            else:
                                return False
    
                    elif string1[index] != string2[index]:
                        index = index + 1
                        if string1[index] == string2[index]:
                            index = index + 1
                            return True
                        elif string1[index] != string2[index]:
                            return False
                index = index + 1
        else:
            return False
        index = index + 1