카테고리 명을 좀 바꿔보았다. 원래는 사용언어 따라 다르게 설정을 했는데, 그냥 프론트엔드 백엔드로 나누어버렸다.
사실 내 성격상 '코딩공부' 라는 큰 카테고리 하나 만들고 그 안에 와르르 집어넣는게 좀 더 편하긴 하다.
오늘은 또 여러모로 나를 힘들게 했던 제어문에 대해 포스팅한다. 학원에서는 벌써 한달 반쯤 전에 배운것 같은데 포스팅을 그다지 자주 안하게 되는 이유는 너무 바빠서였다.
친구가 if else 들어가면 머리터질거라고 경고했었는데 썸네일로 쓰고싶은데 카톡이 없어졌다...
나는 점프 투 파이썬이라는 교재를 사서 수업을 들었다.
그러므로 이번 포스팅부터는 점프 투 파이썬 교재를 참조해서 포스팅을 작성하기로 한다.
우선 반복문에는 if문, while문, for문 이렇게 세가지 종류가 있다. if문을 먼저 설명하도록 하면
1. if 문은 왜 필요할까?

단적으로 if라는 단어는 "만약에" 라는 뜻을 가지고 있다.
else 라는 단어는 "그렇지않다면" 이라는 의미를 가지고있으며, if가 나오면 무조건 같이 사용한다.
위의 설명처럼 만약에 ~이라면 ~하고, ~가 아니라면 ~한다. 라는 말의 만약에 라는 부분을 나타내는 말이다.
코드로 나타내자면, 먼저 돈(money)라는 변수를 참으로 설정해준다
money = True
if money: //만약 돈이 있다면
print(택시를 타고 가라) //택시를 타고 가라 출력
else: //그렇지않다면
print(걸어가라) //걸어가라 출력
이런식으로 코드를 짤 수 있다.
2. 여기서부터는 실전대입.
나는 어제 학원을 9시50분에 마치고, 망미동에 있는 친구를 보러 택시타고 갔는데 친구가 술을 한잔 마셨대서 친구차를 내가 운전해서 동래에 있는 카페를 갔다. 분명히 차를 처음 탔을 때 가방과 물병을 뒷좌석에 놔두었었다.
커피를 한잔 하고 다시 망미동에 친구차로 데려다주고 다시 택시타고 우리 집에 와야하는 상황인데,
뒷좌석에 있어야 할 가방이 없었다. 가방을 카페에 버리고 온 것이다. 그래서 택시타고 다시 동래가서 가방을 가지고 집까지 걸어왔다..... 이쯤되면 인생이 코미디인것 같다.
"만약에 친구 차에 가방이 있다면 택시타고 집으로 가고, 그렇지않다면 택시타고 동래로 가라." 라는 명령어를 타이핑해보겠다.

내 클러치백은 친구 차 뒷좌석에 없었으므로 참이 아닌 거짓을 명명했다.
만약 클러치가 차에 있다면, 낙민동에 있는 집으로 가주시고, 그렇지 않다면 동래에 있는 할리스커피로 가주세요.
라고 입력했으며, clutch = False라는 명령어를 선두에 썼기때문에

기사님은 동래에 있는 할리스커피로 가주셨다.
다행이도 가방은 누가 들고가지않고, 직원분이 챙겨주셨다.

분명한건 술도 안마셨는데 몇번 가방을 버리고 왔다는 점이다.
알바와 학원수업듣기를 병행하다보니 정신이 없어진건 확실해졌다.
if문으로 제어문을 작성할때 정말 중요한것이 한가지가 있다.
바로 들여쓰기이다.
제어문을 사용하면 들여쓰기를 필수적으로 해줘야하는데 코드가 몇백 몇천줄이 되면 어디서 들여쓰기가 잘못되었는지 찾을 방법이 없다.
나도 그래서 수업들을때 "선생님 작동이 안됩니다." 하고 맨날 선생님 호출하면 들여쓰기문제가 60%에, 오타가 40%였다.
나는 멍청하다.
if문의 또 다른 활용은 비교연산자를 사용해서 코드를 입력하는것이다.
비교연산자는 다음과 같은 종류가 있다.

음... 지금 당장 생각나는건 인터넷에서 옷을 구매했을때 5만원 이상 구매하면 택배비 무료인게 생각이 나는데...
최대한 생각나는대로 코드를 타이핑해보면,

해당 코드에서 totalcost는 총 구매금액이다.
"만약 총 구매금액이 5만원 이하라면 무료배송을 출력하고, 그게 아니라면 택배비 5천원을 출력하라"
라는 명령어를 입력했다.
totalcost에 100000을 입력했으므로 5만원 이상 구매한 것이다.

당연히 무료배송이 출력된다.
조금 더 복잡하게 몇가지의 물건의 가격을 지정해서 무료배송이 되는지 안되는지 실험해보자.
변수가 세네개 들어가는것이라 좀 어려울것같다...

먼저 품목은 노란 니트, 빨간자켓, 파란바지, 흰색모자
이렇게 5가지의 변수의 가격을 지정한다.
패션테러가 따로 없다.
maxcost에는 5가지 물건을 전부 더하고, mincost에는 흰색모자 하나만 대입한다.
mincost에 5만원 이하 물건 아무거나 하나 들어가면 된다.
반대로 maxcost에 합 5만원 이상 물건이 들어가면 된다. 갯수제한은 딱히 없다.
그렇게 if문을 maxcost, mincost두개를 만들어서 작성하면
사진상 아래와 같은 코드가 나오는데, 출력에 f포메팅을 사용했다.

그렇게 하면 위와같이 구매금액에 따라서 배송비의 유무가 출력이 된다.
3.and, or not
and, or, not 연산자는 비교연산자와는 또다른 조건을 판단하기 위한 연산자이다.
각각의 연산자는 아래와 같은 뜻을 가지고 있다.

교재에는 주머니의 돈이 얼마만큼 있다면 택시를 타고, 그렇지않다면 걸어가라 는 문장을 코드로 보여준다.

위 내용을 대충 해석해보면, 돈은 2천원 있고, 카드가 존재한다.
만약 돈이 3천원 이상 있거나, 카드가 있다면 택시를 타고 가라 는 말이 출력되고, 그렇지않다면 걸어가라는 말이 출력된다.
돈은2천원이 있지만, 카드가 있기때문에 money >=3000 or card 라는 조건문은 참이 된다.
위의 내용은 아까 작성한 무료배송 코드와 비슷하기때문에 따로 실험하지는 않는다.
4. in 과 not in
또한 파이썬에서는 ~안에 ~가 있다면 이라는 의미를 가진 in이라는 구문을 적용할수있다.
card in [card, phone, money]
True
card not in [card, phone, money]
False
카드가 가방안에 있다면 참이고, 가방안에 없다면 거짓 을 나타낸다.
내일은 if와 else를 조합해서 제어문을 편하게 작성하는 elif와, while문, for문을 포스팅한다.
'코딩입문 > 백엔드' 카테고리의 다른 글
| 코딩입문기-파이썬3버전-6 제어문2- elif , while , for (0) | 2022.07.06 |
|---|---|
| 코딩입문기-파이썬3버전-5 튜플자료형2 (0) | 2022.05.23 |
| 코딩입문기-자바 및 이클립스 설치와 실행 (0) | 2022.05.17 |
| 코딩입문기-파이썬3버전-4 튜플자료형1 (0) | 2022.05.03 |
| 코딩입문기-파이썬3버전-3 리스트자료형의 슬라이싱 (0) | 2022.04.27 |