2018. 6. 10. 23:10ㆍHobby/Programming
파이썬 공식 문서에 아주 당황스러운 피보나치 수열 예제가 있습니다. 대화형 창에서 더하기, 빼기 하며 파이썬 개요를 설명하는 극초반 부분에 나옵니다. 파이썬에 대해 아무것도 모른 상태에서 이 코드를 보면 해석하기 아주 어렵습니다.
예제 코드는 아래와 같습니다.
실행 결과는 1, 1, 2, 3, 5, 8이 세로로 출력 됩니다.
사람들을 헤깔리게 하는 문제의 코드는
암호문 같은 난해한 쉽표와 등호가 있는 수식입니다. 구글에 검색하니 질문 답글이 아주 많이 올라왔지만 속시원한 설명도 없습니다. 질문이 많은건 어찌 보면 당연합니다. 이 예제는 파이썬 설치하고 사용법 설명해주는 곳에 나옵니다.
자료구조에 있는 튜플을 아직 배우지 않았으면 해석하지 못하는 것이 당연합니다. 더군다나 이 수식에는 착시 현상까지 있습니다.
보충설명 하자면 대부분의 사람은
읽을 것 입니다. 눈에 쏙 들어오고 당연하게 이렇게 사용하리라 생각 됩니다. 이것이 파이선에서 튜플이라고 하는 자료구조 형태입니다.
그러나 아래 코드는 좀 복잡해 보이죠. 대부분의 사람은
읽을 것 입니다. 파이썬의 튜플을 모르는 상태에서 발생하는 착시 현상입니다.
정확한 괄호 표기는
이렇게 됩니다.
코드의 실행 순서는 오른쪽 부터 입니다. a+b가 먼저 실행되어 그 값이 b에 저장됩니다. 바뀐 b의 값이 a에 저장됩니다. 이 과정을 언팩킹이라고 합니다. 패킹과 언패킹은 튜플 문서를 보면 자세하게 설명되어 있습니다.
그냥 지나가기 서운해서 숫자를 입력받아 해당 숫자 만큼 피보나치 수열 계산하고 출력하는 예제를 만들었습니다.
pythonex.txt 파일로도 첨부합니다.
- # -*- coding: utf-8 -*-
- a, b = 0, 1
- i = int(input('number : '))
- while b < i:
- print(b, end='\n')
- a, b = b, a+b
'Hobby > Programming' 카테고리의 다른 글
파이썬으로 실행파일 만들기 (0) | 2018.07.02 |
---|---|
파이썬 SQLite3 엔진 업그레이드 하는 법 (0) | 2018.06.25 |
[파이썬] 로또 번호 통계 프로그램 (0) | 2018.06.21 |
Github 명령어 요약 (0) | 2018.06.20 |
파이썬 / 장고 한글, 타임존 설정 변경하기 (0) | 2018.06.15 |
Visual Studio 2017 Community 라이센스 등록하기 (0) | 2018.06.02 |
가독성 좋은 코딩용 글꼴 "네이버 나눔고딕 코딩글꼴" 설치 방법 (0) | 2018.06.01 |
Java SE 7 관련 링크 (0) | 2012.01.13 |
JAVA, eclipse, Android SDK 설치 방법 (0) | 2012.01.11 |