- 아나콘다 가상환경 작성방법
- 파이썬에서 thumbnail만들면서 io 에러난 경우 해결방법
- libraw 라이브러리 사용방법
- 아나콘다 업데이트하기
- 우분투에서 python pip 인스톨하기
- 파이썬으로 웹 스크랩하기10/10
- 파이썬으로 웹 스크랩하기9/10
- 파이썬으로 웹 스크랩하기8/10
- 파이썬으로 웹 스크랩하기7/10
- 파이썬으로 웹 스크랩하기6/10
- 파이썬으로 웹 스크랩하기5/10
- 파이썬으로 웹 스크랩하기4/10
- 파이썬으로 웹 스크랩하기3/10
- 파이썬으로 웹 스크랩하기2/10
- 파이썬으로 웹 스크랩하기1/10
- 파이썬으로 파일 다루기 13 / 13
- 파이썬으로 파일 다루기 12 / 13
- 파이썬으로 파일 다루기 11 / 13
- 파이썬으로 파일 다루기 10 / 13
- 파이썬으로 파일 다루기 9 / 13
- 파이썬으로 파일 다루기 8 / 13
- 파이썬으로 파일 다루기 7 / 13
- 파이썬으로 파일 다루기 6 / 13
- 파이썬으로 파일 다루기 5 / 13
- 파이썬으로 파일 다루기 4 / 13
- 파이썬으로 파일 다루기 3 / 13
- 파이썬으로 파일 다루기 2 / 13
- 파이썬으로 파일 다루기 1 / 13
- 파이썬으로 문자열 다루기 2/2
- 파이썬으로 문자열 다루기1/2
- 파이썬에서 사전 데이터 유형 이용하기2
- 파이썬에서 사전 데이터 유형 이용하기
- 파이썬에서 문자열 연결 및 복제하기
- 파이썬에서 수학 연산자 사용하기
- 13. 데이터베이스 13.8 데이터 삭제
- 13. 데이터베이스 13.7 데이터 수정
- 13. 데이터베이스 13.6 데이터 검색
- 13. 데이터베이스 13.5 데이터 조회
- 13. 데이터베이스 13.4 데이터 입력
- 13. 데이터베이스 13.3 데이터베이스 테이블 생성하기
- 13. 데이터베이스 13.2 SQL 맛보기
- 13. 데이터베이스 13.1 데이터베이스 설치
- 12. 디버깅
- 11.표준 라이브러리 11.2 logging 모듈
- 11. 표준 라이브러리 11.1 sys 모듈
- 10. 예외처리 10.6 with
- 10. 예외처리 10.5. try finally
- 10. 예외처리 10.4 예외 발생시키기
- 10. 예외처리 10.3 예외 처리
- 10. 예외처리 10.2 예외
- 10. 예외처리 10.1 오류
- 9.입력과 출력 9.4 유니코드
- 9.입력과 출력 9.3 Pickle
- 9.입력과 출력 9.2 파일입출력
- 9. 입력과 출력 9.1 입출력
- 8.자료구조 8.7 넘파이(numpy)
- 8.자료구조 8.6 집합(Set)
- 8.자료구조 8.5 열거형(Enum)
- 8.자료구조 8.4 사전
- 8.자료구조 8.3 튜플
- 8.자료구조 8.2 리스트
- 8.자료구조 8.1 문자열
- 7. 클래스 7.4 상속
- 7. 클래스 7.3 객체 초기화
- 7. 클래스 7.2 클래스의 사용
- 7. 클래스 7.1 클래스 정의하기
- 6. 모듈 과 패키지 6.5 패키지
- 6. 모듈 과 패키지 6.4 모듈의 name속성
- 6. 모듈 과 패키지 6.3 바이트 컴파일된 .pyc 파일
- 6. 모듈 과 패키지 6.2 dir() 함수를 이용하여 모듈 정보 알아내기
- 2018년 3월 프로그래밍 인기순위
- 6. 모듈 과 패키지 6.1 모듈을 정의하고 불러오기
- 5. 함수 5.7 람다(lambda) 함수
- 5. 함수 5.6 파이썬 내장함수
- 5. 함수 5.5 DocString
- 5. 함수 5.4 VarArgs 매개 변수
- 5. 함수 5.3 키워드 인수
- 5. 함수 5.2 기본 인수값
- 5. 함수 5.1 지역변수
- 4. 제어문 다루기 4.3 for
- 4. 제어문 다루기 4.2 while
- 4. 제어문 다루기 4.1 if문 Curr
- 파이썬 Python - OS.PATH 기초 정리
- 3. 연산자와 수식
- 2. 파이썬 기초 2.2 파이썬 기초
- 2. 파이썬 기초 2.1 첫걸음
- python 메소드 및 함수정리 모음
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #4
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #3
- 파이썬으로 간단한 스케줄러 만들기
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #2
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #1
- 파이썬(python)으로 RSS 크롤링하기
- Ubuntu(우분투) 리눅스에서 파이썬 설치하기
- 유용한 파이썬 라이브러리 모듈
- 파이썬으로 오늘날짜 폴더 생성하기
- 파이썬 프로그래밍에 대해서
- 두뇌를 정복하는 방법
- 윈도에서 BeautifulSoup4 설치방법
- 파이썬 알고리즘 배우기 좋은 사이트
4. 제어문 다루기 4.1 if문
C급 개발자와 함께하는 파이썬
4. 제어문 다루기
파이썬의 제어문은 다른 프로그래밍 언어와 마찬가지로 특정 조건에 의해 분기하는 if문 , 특정 조건에 만족할 때까지 반복하는 while문, 특정 횟수 만큼 반복하는 for문 등 단순히 일련의 순서로 명령문을 수행하는 것이 아니라 특정한 조건에 따른 loop 문을 수행하는것이다.
4.1 if문
다음과 같은 프로그램을 작성한다고 생각해보자.
버스를 탔는데 버스기사님이 몇살이냐고 묻는다 19세 이하는 청소년 요금이고 20세부터는 성인요금으로 내야한다.
-
버스를 타면 “나이가 몇살인가요?” 묻는다.
-
나이를 입력하고 엔터를 클릭하면
-
나이가 19세 이하면 청소년 요금입니다.
이러한 조건을 가지는 파이썬 프로그램을 만들어보도록 하자.
파이썬 코드는 다음과 같을 것이다.
위 코드는 키보드로부터 나이를 입력받아 age라는 변수에 할당합니다. 변수로 들어온 age는 문자열이기 때문에 int 숫자형으로 변환해서 숫자 19와 비교해서 19보다 작거나 같은경우 print 함수를 통해서 “학생입니다.”를 출력하도록 하고 있습니다.
특히 if ( int(age) ) : 이후에 “:”를 붙여주는것을 잘 보아야 할것입니다. 조건문의 뒤에는 “:” 입력하여 조건문이라는 것을 파이썬에게 알려주는 것입니다. “:”기호는 그 다음 줄부터 새로운 블록이 시작된다는 것을 의미합니다. 조건문이 만족할 때 실행하는 부분 print( "학생입니다." )은 if문의 하위에서 작동하기 때문에 앞에 공백을 주었습니다.
이 두가지를 염두에두고 동일하게 코딩에서 실행하면 아래와 같은 결과를 얻을수 있습니다.
나이를 15세로 입력하였더니 “학생입니다.”라는 메시지가 출력되었습니다.
그런데 프로그램이 너무 간단해 보입니다.
청소년인경우 청소년 요금을 내야하고 성인인경우 성인 요금을 내야합니다.
그러면 조건을 다음과 같이 바꿔보도록 하겠습니다.
-
버스를 타면 “나이가 몇살인가요?” 묻는다.
-
나이를 입력하고 엔터를 클릭하면
-
나이가 19세 이하면 청소년 요금입니다.
-
그렇지 않으면 (나이가 20세 이상이면) 성인 요금입니다.
의 조건으로 다시 프로그램을 만들어 보도록 하겠습니다.
아까 프로그램은 나이를 입력받아서 19세 이하인경우 학생입니다. 메시지를 출력하도록 하였습니다. 그런데 나이가 20세 이상인경우는 “성인입니다.”를 출력해야하므로 아까 출력된 조건이외의 다른 조건을 넣어야 합니다. if 문 조건에서 이외의 포괄적인 조건에 사용하는 조건문이 else 조건문입니다. else 조건문에는 if 문과 마찬가지로 뒤에 “:”를 입력하였습니다. 또한 print(“성인입니다.”) 조건에서 띄어쓰기를 해서 정상적으로 출력된것을 확인할수 있습니다.
이제 프로그램이 완성되었습니다.
성인인경우 “성인입니다.” 학생인 경우 “학생입니다.” 라는 출력을 하도록 하였습니다.
그런데 버스에서 할인이 또 존재하고 있습니다. 초등학생의 경우 학생과는 다른 요금을 내죠. 그럼. 어떻게 할까요? 알아보도록 하죠.
-
버스를 타면 “나이가 몇살인가요?” 묻는다.
-
나이를 입력하고 엔터를 클릭하면
-
나이가 19세 이하면 청소년 요금입니다.
-
19세 미만 중에 13세 이하는 초등학생 요금입니다.
-
그렇지 않으면 (나이가 20세 이상이면) 성인 요금입니다.
그럼 위의 프로그램은 어떻게 개발할지 고민해 보시기 바랍니다.
자 이제 시작 합니다.
위 코드는 입력을 받았는데 19세 이하에서 13세 이하인경우는 초등학생입니다를 출력하도록 되어있습니다.
실행결과도 12를 입력한경우 “초등학생입니다.”와 같이 값이 정상적으로 출력되는것을 알수 있습니다.
하지만 위와같이 if문 안에 if문이 있는경우 가독성도 떨어지고 프로그램이 복잡해지는 경향이 있습니다. 프로그램은 최대한 간결하게 작성하고 구문안에 구문이 들어가지 않도록 작성한다. 이런경우 elif를 사용하면 소스도 간결해집니다.
어떻게 사용해야할지 고민해보기 바랍니다.
짜잔..
elif문은 위와 같이 사용하면 됩니다.
아래와 같이 정상적인 결과를 얻을수 있습니다.
청탁하다 걸리면 패가망신시키겠다.