3.python 이론연습

5 minute read

1. 출력문과 연산자

ex01.py 출력문

# 메모(주석 : comment)

# 저장 : Ctrl + S
# 실행 : F5
print("안녕하세요")

# 정수 : 소수점X
print(58)

# 실수 : 소수점O
print(3.14)

# 문자 : 쌍따옴표 or 홑따옴표
print('hello, python')
print("hello, python")

# 문자와 문자는 콤마(,)로 연결 가능
print("hello", "python")

#result : hello python

# 문자와 문자는 +로 연결 가능
print("hello"+"안녕")
#result : hello안녕

주의할점

  1. print() 함수에서 문자와 문자를 연결하는 방법 두가지

첫째, 문자와 문자는 콤마(,)로 연결 가능, 대신 콤마(,)는 띄어서 결과값이 나온다

둘째, 문자와 문자는 플러스(+)로 연결 가능

ex02.py 출력문

# 정수(decimal)
print("%d" % 10)

# 실수(float)
# 소수점 이하 2자리까지만 출력해줘~
print("%.2f" % 3.141)
# result : 3.14

print("%.2f" % 10)
# result : 10.00

# 문자 한 개, 문자형(character)
print("%c" % "B")

# 문자열(string)
print("%s" % "최여정")

# 출력할 데이터가 2개 이상일 경우,
# 반드시 소괄호로 묶어준다.
# 국어 성적이 100점이고, 학점은 A이다.
print("국어 성적이 %d점 이고, 학점은 %c이다." % (100, "A"))

주의할점

1.정수 : 소수점을 넣었을때, TypeError가 나는것이 아니라 정수값을 반환한다.

print("%d" % 10)
# result : 10

print("%d" % 10.1234)
# result : 10

2.실수 : 정수를 넣었을때, TypeError가 나는것이 아니라 실수값을 반환한다.

print("%.2f" % 10.12)
# result 10.12

print("%.2f" % 10.1234)
# result 10.12

print("%.2f" % 10)
# result 10.00

3.문자형(char) : char의 형태로 나타낼수 있는 방법은 문자형, 아스키코드, 유니코드 세가지 방법이 잇다.

# 문자 한 개, 문자형(character)
print("%c" % "B")
# result : B

print("%c" % "BCDF")
# result : TypeError: %c requires int or char

print("%c" % 65)
# ASC code
# result : A

print("%c" % "\u0061")
# unicode
# result : a

4.문자열

print("%s" % "BCDF")
#result : BCDF

print("%s" % "B")
#result : B

ex03.py 산술 연산자

# 연산자(operator)

# 1. 산술 연산자

# 1) 더하기 +

# 2) 빼기 -

# 3) 곱하기 *

# 4) 나누기 /

# 5) 나누기(몫) //

# 6) 나누기(나머지) %

print(10 + 3)
print(10 - 3)
print(10 * 3)
print(10 / 3)
print(10 // 3)
print(10 % 3)

2. 변수 , 대입연산자 , 값 교체하기

ex05.py 변수

# ex05.py

# 변수(variable)
# 1. 변수는 단, 한개의 값을 저장할 수 있다.
# 2. 변수명은 숫자로 시작할 수 없다.
# 3. 특수문자 _을 허용한다.
# 4. 알파벳의 대소문자를 구분한다.
# 5. 예약어(keyword)는 변수명으로 사용할 수 없다.
#    ex) def, int, class, ...

num = 17
num = 8
print(num)

_1top = 100

a = 7
A = 3
print(a)
print(A)

ex07.py 대입 연산자

# ex07.py

# 2. 대입 연산자 : =
# 변수는 오직 대입 연산자를 통해서만이
# 값의 변경이 가능하다.

num = 10
print(num + 1)     # 11
print(num)         # 10

num = num + 1
print(num)         # 11

3. 비교연산자

ex09.py 비교연산자

# ex09.py

# 3. 비교 연산자
# => 비교 연산자의 결과는 참(True) 또는 거짓(False) 이다.
# 1) 크니?           >
# 2) 작니?           <
# 3) 같니?           ==
# 4) 다르니?         !=  (! : not)
# 5) 크거나 같니?    >=
# 6) 작거나 같니?    <=

print(10 > 3)
print(10 < 3)
print(10 >= 3)
print(10 <= 3)
print(10 == 3)
print(10 != 3)


ex11.py 논리연산자

# 4. 논리 연산자

# 1) and : 양쪽 모두 참이어야, 참

# 2) or : 어느 한쪽이라도 참이면, 참

print(10 == 10 and 3 == 3)
# result : true
print(10 != 10 and 3 == 3)
# result : false
print(10 == 10 and 3 != 3)
# result : false
print(10 != 10 and 3 != 3)
# result : false

print()

print(10 == 10 or 3 == 3)
# result : true
print(10 != 10 or 3 == 3)
# result : true
print(10 == 10 or 3 != 3)
# result : true
print(10 != 10 or 3 != 3)
# result : false

주의할점, 꿀팁

  • and은 하나만 false여도 false이기 때문에 다 확인할 필요없이 flase가 나오게 되면 뒷 코드를 더이상 확인 하지 않는다.

  • or은 하나만 true여도 true이기 때문에 다 확인할 필요없이 true가 나오게 되면 뒷 코드를 더이상 확인 하지 않는다.

  • and와 or에서 Heavy한 즉 연산이 많은 것을 맨 앞에두게 되면, true 인지 false인지 판단하는데 시간이 오래걸리게 되므로 따라서 함수나 연산이 복잡한것들은 맨 뒤에 배치해놓는게 좋다.

3. 입력받기

ex13.py

# ex13.py

# 입력받기

print("당신의 나이를 입력하세요.")
age = input()
print(age)

# type() 함수 : 데이터의 종류 확인
print(type(age))    # <class 'str'>

# int() 함수 : 문자 -> 숫자
age = int(age)
print(type(age))    # <class 'int'>


# 방법 1)
print("당신의 나이를 입력하세요.")
age = input()
age = int(age)

# 방법 2)
age = input("당신의 나이를 입력하세요 : ")
age = int(age)

# 방법 3)
age = int(input("당신의 나이를 입력하세요 : "))
print(age)

4. 조건문

ex15 문제.py

# ex15_문제.py

# 제어문(control statement)
# 1) 조건문 : if
# 2) 반복문 : while, for
# 3) 보조 제어문 : break, continue

# 들여쓰기(indentation)에 주의!
# 조건문 if의 구조

if 조건식:
    조건식이 (True) , 실행할 문장


if True:
    print("실행 O")

if False:
    print("실행 X")

# 예) 홀짝
num = 8
print(num % 2 == 0)
print(num % 2 == 1)

if num % 2 == 0:
    print("짝수")
if num % 2 == 1:
    print("홀수")

# 문제 1) 양수, 0, 음수 출력
num = -18

# 문제 2) 4의 배수 출력
num = 12

# 문제 3) 합격, 불합격 출력
score = 87

ex15 정답.py

# ex15_정답.py

# 예) 홀짝
num = 8
print(num % 2 == 0)
print(num % 2 == 1)

if num % 2 == 0:
    print("짝수")
if num % 2 == 1:
    print("홀수")

# 문제 1) 양수, 0, 음수 출력
num = -18

if num > 0:
    print("양수")
if num == 0:
    print("0")
if num < 0:
    print("음수")

# 문제 2) 4의 배수 출력
num = 12

if num % 4 == 0:
    print("4의 배수이다.")
if num % 4 != 0:
    print("4의 배수가 아니다")

# 문제 3) 합격, 불합격 출력
score = 87

if score >= 60:
    print("합격")
if score < 60:
    print("불합격")

5. 랜덤

# ex26.py

# 랜덤

# random.py 파일의 내용을 사용하겠다.
import random

r_num = random.randint(0, 2)    # 0, 1, 2 중에서 랜덤 숫자
print(r_num)

if문의 구조

# ex32.py

'''
# if문의 구조 3가지

(1)
if 조건식:
    조건식이 참일 때, 실행할 문장

(2) 양자택일
if 조건식:
    조건식이 참일 때, 실행할 문장
else:
    조건식이 거짓일 때, 실행할 문장

(3) 다중택일
if 조건식1:
    조건식1이 참일 때, 실행할 문장
elif 조건식2:
    조건식2가 참일 때, 실행할 문장
elif 조건식3:
    조건식3이 참일 때, 실행할 문장
else:
    위 조건을 모두 만족하지 않을 때, 실행할 문장
'''

num = 10
if num % 2 == 0:
    print("짝수")
if num % 2 == 1:
    print("홀수")

#------------------

if num % 2 == 0:
    print("짝수")
else:
    print("홀수")

#------------------

# if - elif 구문은
# 참인 조건식을 만나면
# 이하 조건식은 실행하지 않는다.
if 10 == 10:
    print(10)
if 11 == 11:
    print(11)

if 10 == 10:
    print(10)
elif 11 == 11:
    print(11)

# ex33.py

score = 80
if score >= 60:
    print("합격")
else:
    print("불합격")

#-----------------------------------
# else는 if의 조건이 거짓이면 무조건 실행된다.

print("1.과자")
print("2.음료수")
print("3.라면")

select = 1
if select == 1:
    print("과자를 선택하였습니다.")
if select == 2:
    print("음료수를 선택하였습니다.")
if select == 3:
    print("라면을 선택하였습니다.")
else:
    print("오류1")

#-----------------------------------

print("1.사과")
print("2.포도")
print("3.감")

select = 1
if select == 1:
    print("사과를 선택하였습니다.")
elif select == 2:
    print("포도를 선택하였습니다.")
elif select == 3:
    print("감을 선택하였습니다.")
else:
    print("오류2")

주의할점

  • 파이썬에서는 elseif가 아닌 elif 를 쓴다는걸 명심하자

6. 리스트의 기본

Leave a comment