본문 바로가기

코딩/파이썬 혼공단

혼공파 파이썬 2주차 기본미션과 선택미션 수행하기

혼공파를 하면 할수록 혼공파 시작한 나 정말 칭찬해주고 싶닿ㅎㅎㅎㅎㅎ

아직 시작한지 2주차 밖에 되진 않았지만 혼공파를 하면서 정말 좋다고 생각한 것이 있다.!!

그건 바로 책 이름은 혼자 공부하는 이지만 나혼자 한다는 느낌이 아니라 다른분들과 함께 한다는 느낌을 많이 받는다는 것이다.

다른분들이 하신것도 보면서 "이분은 이렇게 풀어내셨구나~ " "정리를 정말 깔끔하게 잘하셨다" 등등  배울점도 많았고 나도 더 열심히 하고싶다는 동기 부여도 되서 정말 도움이 많이 되고 있다.

그래서 세운 이번주 나의 목표는 내가 도움 받은 것처럼 내가 한 과제가 다른분들에게도 도움이 되는 것이다.

아!! 물론 목표에 나도 열심히 공부한다는것도 있다!!

그런 마음으로 더 열심히  2주차 공부 시작합니다~~!!!

 

 

 

2-3  변수와 입력

♣ 변수:

         -  값을 저장할때 사용하는 식별자 이다.

         -  변할 수 있는 자료 라고 생각하면 된다.

          -  숫자뿐만 아니라 모든 자료형의 값을 저장할 수 있다.

 

변수 만들기/사용하기

예) pi라는 이름의 변수를 만들어 보자

>>> pi = 3.14159265
>>> pi
3.14159265

 

변수를 활용하는 방법에는 3가지가 있다.

첫째, 변수를 선언하는 방법

- 변수를 생성하는 것을 의미한다.

예) pi를 "사용하겠다"라고 선언하는 것을 말한다.        

변수 =  값

예) >>> pi = 3.14159265

 

둘째, 변수에 값을 할당하는 방법

-변수에 값을 넣는 것을 의미한다.

예) π =3.14159265         변수에 사용하겠다고 선언한 pi에 값을 넣는 것, 즉 pi = 3.14159265를 말한다.

이때 = 기호는 '같다'는 의미가 아니라 우변의 값을 좌변에 '넣겠다', '할당하겠다'를 의미합니다. 

셋째, 변수를 참조하는 방법

- 변수에서 값을 꺼내는 것을 의미한다.

- π를 쓰면 그안에 들어있는 값을 쓰겠다는것을 의미한다.

이처럼 변수 안에 있는 값을 사용하는 것을 변수참조라 한다.

-변수를 참조할 때에는 참조할 위치에서 변수 이름을 아래와 같이 써주면 된다.

● 변수에 저장된 값을 출력한다.

변수

 

● 변수에 저장된 값으로 연산한다.

변수 + 변수

 

● 변수에 저장된 값을 출력한다.

print(변수)

 

앞의 예시에서 입력한 pi는 숫자 자료형에 이름을 붙인 것이기 때문에 숫자 연산을 모두 수행할 수 있다.

다만, pi는 숫자형 자료이기 때문에 숫자와 문자열을 연산하는 것은 당연히 안된다.

pi + 문자열                            오류가 발생한다

 

>>> pi  = 3.14159265
>>> pi + 2
5.14159265

>>> pi - 2
1.1415926500000002

>>> pi * 2
6.2831853

>>> pi / 2
1.570796325

>>> pi % 2
1.1415926500000002

>>> pi * 2

 

이때 위에있는것처럼 썼는데 값이 출력이 안되서 뭐가 문제인지 엄청 고민했는데  알고보니 앞에 print를 안적고 책에 쓰여진 그대로 pi + 2 이렇게만 적어서 값이 출력이 안된거였다.

알고보면 진짜 기본적인건데.....그래도 이제라도 확실히 알게되서 다행이라고 생각하기로 했다. ㅎㅎ앞으로는 안까먹을수 있을것같다ㅎㅎㅎㅎ  출력하기위해선 무조건 print !!!!!

 

직접 해보는 손코딩 

 

원의 둘레와 넓이 구하기

 

복합대입연산자

: - 기존의 연산자와 조합해서 사용할 수 있는 연산자

  - 자료형에 적용하는 기본 연산자와  = 연산자를 함께 사용해 다음과 같이 구성하는 연산자 이다.

a += 10

  이렇게 a += 10이라고 사용하면 a = a + 10이라고 하는 것과 같은 결과를 낸다.

숫자에 적용할 수 있는 다른 복합대입 연산자들도 마찬가지의 방법으로 사용할 수 있다.

 

연산자 이름 설명
+= 숫자 덧셈 후 대입
-= 숫자 뺄셈 후 대입
*= 숫자 곱셈 후 대입
/= 숫자 나눗셈 후 대입
%= 숫자의 나머지를 구한 후 대입
**= 숫자 제곱 후 대입

  

사용자 입력 : input

- 파이썬은 명령 프롬프트에서 사용자로부터 데이터를 입력받을 때 input() 함수를 사용 한다.

 

블록: 프로그램이 실행 도중에 잠시 멈추는 것을 말한다.

- input() 함수가 사용자에게 자료 입력을 요구하면서 코드 진행을 블록하고 있는것 이다.

 

 

문자열을 숫자로 바꾸기

int()함수 : 문자열을 int 자료형으로 변환하고 float()함수는 문자열을 float 자료형으로 변환한다.

str()함수 : 숫자를 문자열로 변환한다.

 

2-4 숫자와 문자열의 다양한 기능

format()함수 

: - format()함수를 이용하면 숫자와 문자열을 다양한 형태로 출력할 수 있다.

  - format()함수는 문자열이 가지고 있는 함수이다.

  - 증괄호{}를 포함한 문자열 뒤에 마침표( . )를 찍고 format() 함수를 사용하는데, 증괄호의 개수와 format 함수 괄호 안의 매개변수의 개수는 반드시 같아야 한다.

"{ }".format(10)
"{ } { }".format(10, 20)
"{ } { } { } { } { }".format(101, 202, 303, 404, 505)

이러한 형태로 함수를 사용하면 앞쪽에 있는 문자열의 { }기호가 format() 함수 괄호 안에 있는 매개변수로 차례로 대치되면서 숫자가 문자열이 되는 것이다.

 

● upper()함수와  lower()함수

: 문자열의 알파벳을 대문자로 혹은 소문자로 변경한다.

● strip() 함수 : 문자열 양옆의 공백을 제거한다.

● find() 함수 : 문자열 내부에 특정 문자가 어디에 위치하는디 찾을 때 사용한다.

● in연산자는 문자열 내부에 어떤 문자열이 있는지 확인할 때 사용한다.

● split()함수 : 문자열을 특정한 문자로 자를 때 사용한다.

● f-문자열

: f-문자열을 사용하면 문자열 안에 값을 format() 함수보다 간단하게 삽입할 수 있다.

 

 

 

 

 

 

 

3장 조건문

03-1 불 자료형과 if 조건문

불(boolean) : 기본적인 자료형으로 참과 거짓을 나타내는 값

-불은 오직 True(참) 와 False(거짓) 값만 가질 수 있다.

-참과 거짓은 '어떤 명제' 의 결과가 될때 의미를 갖는다.

- 불은 비교 연산자를 통해서 만들 수 있다.

 

파이썬에서는 True 와 False의 첫글자는 반드시 대문자로 적어야 한다!!!

 

비교 연산자

연산자 설명
== 같다
!= 다르다
< 작다
> 크다
<= 작거나 같다
>= 크거나 같다

 

문자열에도 비교 연산자를 사용할 수 있다.

이때 한글은 사전 순서(가나다순)로 앞에 있는 것이 작은 값을 갖습니다.

예) 가방이 하마보다 작은값을 갖는다.

 

 

● 논리연산자 : not, and, or 연산자가 있으며, 불을 만들때 사용한다.

● if 조건문: 조건에 따라 코드를 실행하거나 실행하지 않게 만들고 싶을 때 사용하는 구문이다.

if 의 조건문 뒤에는 반드시 콜론(:)을 붙여야 한다.

if문 다음 문장은 4칸 들여쓰기(띄어쓰기 네번) 후 입력한다. 들여쓰기를 입력 하지 않으면 오류가 발생하니 이점 꼭 기억하자!!! 

 

03-2 if~else와 elif 구문

선택미션

else 조건문

: - else 구문은 if 조건문 뒤에 사용하며, if 조건문의 조건이 거짓일 때 실행되는 부분이다.

  - 조건문이 오로지 두 가지로만 구분될 때 if else 구문을 사용하면 조건 비교를 한 번만 하므로 이전의 코드보다 두 배 효율적이라고 할 수 있다.

if 조건:
ㅁㅁㅁㅁ조건이 참일 때 실행할 문장

else:
ㅁㅁㅁㅁ조건이 거짓일 때 실행할 문장                                                                 ㅁㅁㅁㅁ는 들여쓰기(띄어쓰기)4칸 을 말한다.

 

직접해보는 손코딩

if 조건문에 else 구문을 추가해서 짝수와 홀수 구분하기

실행결과:











 

elif구문

: - 세 개 이상의 조건을 연결해서 사용하는 방법이다.

  - if 조건문과 else구문 사이에 입력하여 다음과 같은 형태로 사용한다.

if 조건A
ㅁㅁㅁㅁ조건A가 참일 때 실행할 문장

elif 조건B
ㅁㅁㅁㅁ조건B가 참일 때 실행할 문장

elif 조건C:
ㅁㅁㅁㅁ조건C가 참일 때 실행할 문장
...

else:
ㅁㅁㅁㅁ모든 조건이 거짓일 때 문장

 

 - elif 구문을 사용할 떄는 앞 단계 조건문에서 비교했던 것을 다음 단계에서 한번 더 하고 있지는 않은지 꼭 확인하기!

x o
(밑에처럼 써준다)
elif 4.2 <= score < 4.5: elif 4.2 <= score:

 

 

직접 해보는 손코딩

계정구하기

실행결과:
















 

False로 변환되는 값 :

- if 조건문의 조건식에서 False로 변환되는 값은 None, 0, 0.0과 빈컨테이너(빈 문자열, 빈 바이트열, 빈리스트, 빈 튜플, 빈 딕셔너리 등입니다. 이 외에는 모두 True로 변환므로 위의 3가지만 기억하면됩니다. 

(if 조건문의 매개변수에 불이 아닌 다른 값이 올 때는 자동으로 이를 불로 변환해서 처리합니다. 따라서 어떤 값이 True로 변환되고, 어떤 값이 False로 변환되는지 알고 있어야 코드를 이해할 수 있습니다.)

-뭔가 없는것 같은것은 False로 기억하자!

 

pass 키워드:

- 프로그래밍의 전체 골격을 잡아놓고, 내부에 처리할 내용은 나중에 만들고자 할 때 pass라는 키워드를 입력해 둡니다. 이때 골격은 일반적으로 조건문, 반복문, 함수, 클래스 등의 기본 구문을 말합니다.

- 코드를 살펴보던 중 pass 키워드를 만나면 '진짜로 아무것도 안함' 또는 '곧 개발하겠음'이라는 의미로 생각하면 됩니다.

(파이썬의 경우에는 if 조건문 사이에는 무조건 들여쓰기(띄어쓰기) 4칸을 넣고 코드를 작성해야만 구문이 성립됩니다.

그렇지않으면 IndentationError를 발생한다. 이것을 해결하기위해 pass라는 키워드를 사용합니다.)

if zero == 0
    빈 줄 삽입

else:
    빈 줄 삽입

 

 

기본미션

3. 사용자에게 태어난 연도를 입력받아 띠를 출력하는 프로그램을 작성해 주세요.

작성 시 입력 받은 연도를 12로 나눈 나머지를 사용합니다. 나머지가 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11일 때

각각 원숭이, 닭, 개, 돼지, 쥐, 소, 범, 토끼, 용, 뱀, 말, 양띠입니다.

 

실행결과 :



























 

 

 

 

 

 

 

 

2주차는 1주차에 한것보다 많이 어려웠다...ㅠㅠ

그런데 어려웠던 만큼 원하는값이 나올때의 그 희열감이란~~~~ㅎㅎㅎㅎㅎ 어렵긴 한데 하면할수록 재밌어진다.

이런것 때문에 다들 파이썬 공부를 하나보다~ㅎㅎㅎㅎㅎㅎ

이번주차에는 다른 컴퓨터 시험이 있는 주여서 만족할만큼의 정리를 못한것 같아 아쉽다..ㅠㅠ

그 아쉬움을 3주차 공부에서 더 열심히 해서 해소해야겠다~!!!