질문

파이썬 이해

image_picker_C4286334-DDD1-4507-9C28-CB80F9558F77-14498-00000913D93DE07C.jpg

결과값ㅇ 0,3,1이 나온거까지는 이해가되는데 어떻게 또 3이 나오는지 이해가 안되요.. 도와주세요!




 

1개의 댓글

Profile

## 1: 원본 코드에 주석을 추가했습니다.

 

 

 

def runLengthEncoding(data):

 

    result = []

 

    // count값은 0번 인덱스의 개수가 무시되기 때문에 1부터 시작합니다.

 

    count = 1

 

    // data의 1번 위치부터 반복을 시작합니다.

 

    // python에서 인덱스는 0부터 시작함을 잊으면 안됩니다.

 

    for i in range(1, len(data)):

 

        // 만약 현재 데이터가 이전 데이터와 같다면 count를 올립니다.

 

        if data[i] == data[i-1]:

 

            count = count + 1

 

        // 만약 현재 데이터가 이전 데이터와 다르다면

 

        // result 리스트에 이전 데이터 정보와 count 개수를 저장합니다.

 

        // 그리고 count를 1로 초기화합니다.

 

        else:

 

            result.append(data[i-1])

 

            result.append(count)

 

            count = 1

 

        // 만약 i가 result의 마지막 길이 직전이라면

 

        // 현재 count 정보를 저장하고 종료합니다.

 

        if i == (len(data)-1):

 

            result.append(data[i])

 

            result.append(count)

 

    return result

 

 

 

i=runLengthEncoding("000111000111")

 

print(i)

 

 

 

## 2: 원본 코드에 print 함수를 통해서 동작을 확인해 보았습니다. 수정된 코드는 아래와 같습니다.

 

 

 

def runLengthEncoding(data):

 

    result = []

 

    count = 1

 

    for i in range(1, len(data)):

 

        print('{}, {} : '.format(data[i-1], data[i]), end="") #수정

 

        if data[i] == data[i-1]:

 

            print('일치') # 수정

 

            count = count + 1

 

        else:

 

            print('불일치, data {}: count {} 저장'.format(data[i-1], count)) #수정

 

            result.append(data[i-1])

 

            result.append(count)

 

            count = 1

 

        if i == (len(data)-1):

 

            print('마지막 요소, data {}: count {} 저장'.format(data[i], count)) #수정

 

            result.append(data[i])

 

            result.append(count)

 

    return result

 

 

 

i=runLengthEncoding("000111000111")

 

print(i)

 

 

 

## 3: 2에 따른 출력은 아래와 같습니다.

 

 

 

0, 0 : 일치

 

0, 0 : 일치

 

0, 1 : 불일치, data 0: count 3 저장

 

1, 1 : 일치

 

1, 1 : 일치

 

1, 0 : 불일치, data 1: count 3 저장

 

0, 0 : 일치

 

0, 0 : 일치

 

0, 1 : 불일치, data 0: count 3 저장

 

1, 1 : 일치

 

1, 1 : 일치

 

마지막 요소, data 1: count 3 저장

 

['0', 3, '1', 3, '0', 3, '1', 3]

 

 

 

:)

0 0    댓글  

번호 제목 글쓴이 날짜 조회 수 추천 수
공지 [2023 대동제] 2023 대동제 축제 후기 이벤트!! profile 금오사이 2023.05.19 3325 0
공지 [종료된 이벤트] 🌸🌸🌸 2023 벚꽃 이벤트 당첨자 발표🌸🌸🌸 profile 금오사이 2023.04.08 2968 3
공지 2022 대동제 축제 후기 이벤트 당첨자 발표 profile 금오사이 2022.09.20 5436 0
공지 2022-2 개강 이벤트 종료 profile 커뮤니티운영팀 2022.09.20 4095 0
공지 금오위키 관련 공지 profile 금오사이 2022.09.19 3268 3
공지 "의좋은 형제 & 의상한 형제를 찾습니다!" 당첨자 발표 1 profile 커뮤니티운영팀 2021.05.28 5090 3
공지 금오사이 수강후기 당첨자 발표입니다! 9 profile 금오사이 2020.07.20 5311 5
공지 비방/욕설/음란 등 게시판 정책에 위반되는 글을 삭제 될 수 있습니다. profile 금오사이 2018.05.24 5729 3
18006 [질문] 일반화학 박수경 교수님 2 매혹된 까마귀 2020.03.22 1781 0
18005 SeaBird (동아리홍보) - 스킨스쿠버 동아리 profile SeaBird 2020.03.08 1781 3
18004 손소독제를 달랬는데 왜 락스를 주는거지? 13 유쾌한 까마귀 2020.12.10 1780 0
18003 일물실 1 교수님이 아끼는 까마귀 2020.04.12 1780 0
18002 [질문] 신입생 분들 학번 조회 되시나요? 10 예리한 까마귀 2020.02.20 1780 0
18001 [질문] 산공 시간표 공유 가능하신 분 있나요 ?? ㅇㅏㄴ녕녀 2021.01.17 1779 0
18000 [읽을거리] 아니 ,,, 9 신중한 까마귀 2020.09.08 1779 0
17999 공학수학1 ㅈㅅㅁ 2 황홀한 까마귀 2020.04.04 1779 0
17998 대구분들.. 4 버스를 놓친 까마귀 2020.02.19 1779 0
17997 [질문] 오름 방 교체 2 기숙사에 서식하는 까마귀 2022.11.02 1778 1
17996 아까 넷플릭스 본다던 까마귀다 걷는 걸 좋아하는 까마귀 2020.10.25 1778 0
17995 일물실 ㅠㅠㅠㅠ 5 ㄴㅋ 2020.03.27 1777 0
17994 [질문] 복학생]3학년이 2학년 과목 수강신청 하려면 어떻게 해야하나요? 5 요다 2020.08.12 1776 0
17993 이 썰은 볼때마다 슬프네 ㅠㅠ 5 금오풍이 무서운 까마귀 2020.12.10 1775 3
[질문] 파이썬 이해 1 안보이는 까마귀 2020.04.28 1775 0
17991 [질문] 도서관 페이지에 있는 해커스 강의 들을만함? 3 도전적인 까마귀 2021.03.09 1774 0
17990 전 세계 동시 개최, 세계 최대 해외 어학연수/유학 온라인 박람회 1/16 (사전 신청 마감 3일 전) EF코리아 2021.01.13 1774 0
17989 부모님이 현정부 지지하시라는데 9 무관심한 까마귀 2020.04.12 1774 0
17988 기숙사 입사일 연기 환불 2 기쁜 까마귀 2020.02.20 1774 0
17987 질문있습니다 1 생각하는 까마귀 2020.08.24 1773 0
서버에 요청 중입니다. 잠시만 기다려 주십시오...