티스토리 뷰

1. 조건문

 

조건문의 의의는 특정한 조건이 달성하게 되면 행동을 하고 달성하지 않으면 다른 행동을 하도록 명령한다.

Go, stop을 조건절은 True, False와 같은 결과로 만들어야 한다

- True : 1, 2 < 3, a == 2

- False : 0, 3 > 2

True, False프로그래밍에서 가장 기초적인 자료형으로 Boolean 자료형 으로 불린다.

컴퓨터의 아주 기본적인 논리 구조를 표현하는 방법

if (조건절): 
   (실행구문1)
elif (조건절2):
   (실행구문1)
else:
   (실행구문1)

또한 하나의 조건절은 반드시 if-elif-else 중 하나에만 만족한다. 동시에 여러 개의 실행구문 1, 2, 3 이 실행되는 경우는 없다.

 

1.2 연산자

 

True, False - Boolean 자료형을 다루려면 연산자를 이용하면 된다. 

 

== : 등호

*  곱하기, /  나누기, + 더하기, - 빼기

% 나눈 나머지, // 나눈 몫

 

예) 주어진 값이 짝수이면 짝수라고 출력하는 함수를 만들어라

n = 2
if n % 2 == 0:
   print('짝수입니다')
else:
   print('홀수입니다')

 

1.3 풀어보기

 

https://school.programmers.co.kr/learn/courses/30/lessons/12935

arr = [4, 3, 2, 1]

# 제일 작은 숫자 구하기
min_arr = min(arr)
arr.remove(min_arr)
print(arr)

 

정답

arr = [4, 3, 2, 1]

if len (arr) == 1:
    print([-1])
else:
    min_arr = min(arr)
    arr.remove(min_arr)
    print(arr)

 

2. for 반복문

 

2.1 문법

for (iterator) in (sequence type)"
	(실행구문1)

일반벅으로 iteratorsms 는 반복자로 번역되지만 반복문 안에서만 사용되는 변수이다.

! 프로그래밍에서 중요한 원칙은 한 구문 안에서 선언된 변수는 밖에서 사용되지 않아야 한다. 가능하더라도 서로 배제하기 위해 서로 다른 변수명을 선언하는 것을 권장

 

for문에서 반복할 수 있는 자료형은 리스트, 문자열 자료형, range() 내장 함수 등이 가능하다.

for i in '가나다':
print(i)

-> 가  나  다

 

range 함수는 내장함수로 나누면 3가지 문법이 있다.

range(3) : 시작(디폴트 0) 부터 2(3-1)까지 만들기 : 0, 1, 2

range(1, 4) : 시작(1) 부터 3(4-1)까지 만들기 : 1, 2, 3

range(2, 6, 2) : 시작(2) 부터 5(6-1)까지 2씩 뛰어 만들기 : 2, 4

 

2.2 풀어보기

 

https://school.programmers.co.kr/learn/courses/30/lessons/12932

숫자를 문자로 바꾸고 list의 insert 기능 사용해보기

 

n = 12345

#숫자를 문자열로 바꾸는 함수 str
str(n)

-> '12345'
n = 12345
answer =[]

#숫자를 문자열로 바꾸는 함수 str
str(n)
for i in str(n):
    # print(i)
    answer.insert(0, int(i)) 
print(answer)

-> [ 5, 4, 3, 2, 1]

 

3. While 반복문

 

3.1 문법

While은 조건문과 반복문의 조합. while 내에서 선언된 구문은 조건을 만족할 때까지 영원히 수행된다.

While (조건문) :
   (실행구문)

다음 구문은 영원히 반복함

while True:
  print('파이썬 넘 어렵')

그래서 외부 변수를 선언하여 limit을 건다

n = 0
while n < 3:
  print('while 3번만 실행')
  n = n + 1

 

3.2 기타 구문 : continue, break pass

pass : 코드가 비어있는 것과 같다.

continue : 하기 코드를 무시하고 즉시 다음 루프를 실행한다.

for i in range(3):
  print(i)
  if i == 0:
    continue

break : 현재 돌고 있는 루프를 깬다.

for i in range(3):
   break
   print(i)   # 아무것도 출력되지 않는다

 

3.3 풀어보기

 

https://school.programmers.co.kr/learn/courses/30/lessons/12931

n = 123
remain = []

while True:
    remain.append(n % 10)
    n = n // 10
    
    if n == 0:
        break
print(remain)
print(sum(remain))
n = 987
remain = 0
while True:
    remain = remain + n % 10
    n = n // 10
    if n // 10 == 0:
        remain = remain + n % 10
        break
print(remain)
n = 123
remain = []

while True:
    remain.append(n % 10)
    n = n // 10
    
    if n == 0:
        break
print(remain)  # 출력 : [3, 2, 1]
print(sum(remain))  # 출력 : 6

 

 

3.4 종합 풀어보기

answer = []

for num in arr:
  if num % divisor == 0:
    answer.append(num)
answer = sorted(answer)

if len(answer) == 0:
  print([-1])
else:
  print(answer)

 

- 기타 질의응답

 

리스트 컴프리헨션

my_list = []
for i in range(3):
    my_list.append(i)
print(my_list)
# 출력 : [0, 1, 2]
[ i for i in range(3) ]
# 출력 : [ 0, 1, 2 ]

 

zip 함수

my_list = [1, 2, 3]
my_str = ['가', '나', '다']

for i, v in zip(my_list, my_str):
	print(i, v)
    
# 출력 : 1 가 2 나 3 다

'세션 복습 > 파이썬 세션' 카테고리의 다른 글

파이썬 베이직 (3)  (1) 2025.01.13
파이썬 베이직 (2)  (1) 2025.01.09
파이썬 베이직 (1)  (1) 2025.01.07
[3일차] 파이썬 세션 3  (0) 2025.01.07
[1일차] 파이썬 세션 1  (1) 2024.12.09
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
글 보관함