Python & Django Day3

3 minute read

Fastcampus Python&Django 온라인 강의를 듣고 작성한 Class note입니다.

흐름제어 if, for while

Algorithms : 1~100 사이 숫자 맞추기

 1import random
 2n = random.randint(1, 100)
 3while True :
 4    guess = int(input("정답을 맞춰보세요. :"))
 5    if n == guess :
 6        print("정답입니다.")
 7        break
 8    elif abs(n - guess) < 10 :
 9        print("아 아깝습니다.")
10    else : 
11        print("틀렸습니다.")

For문

 1for el in [1, 2, 3, 4]:
 2    print(el)
 3
 4# 1
 5# 2
 6# 3
 7# 4
 8
 9for i in range(100):
10    print(i)

list()

 1list("python")
 2# ['p','y','t','h','o','n']
 3
 4var = []
 5for i in range(100):
 6    var.append(i)
 7print(var)
 8# [0, 1, 2, 3, ..., 99] # 0부터 99까지 담긴 리스트가 생성된다.
 9
10list(range(100))    # 0부터 99까지 들어간 리스트 생성
11                    # range() 자체로는 리스트가 아니다.

1부터 100까지 출력하기

 1n = 1
 2while n <= 100:
 3    print(n)
 4    n += 1
 5
 6for i in range(100):
 7    print(i)
 8    if i > 100:
 9        break
10
11# 참고
12for i in range(1, 101):
13    if i % 2 == 0:
14        print("{} 짝수입니다.".format(i))
15    else:
16        pass

1부터 100까지 다 더하기

1n = 0
2for i in range(1, 101):
3    n += i
4
5print(n)

sum()

1numbers = [1, 2, 3, 4, 5]
2sum(numbers)
3# 15
4
5numbers = list(range(1, 101))
6sum(numbers)

1부터 100까지 중 2와 3의 약수만 더하기

1n = 0
2for i in range(1, 101):
3    if i % 2 == 0:
4         n += i
5    elif i % 3 == 0:
6        n += i
7
8print(n)
9    

fizz buzz

  1. 1 ~ 100까지 숫자를 순서대로 출력한다
  2. 그 숫자가 3의 배수일 때는 숫자 대신 fizz
  3. 그 숫자가 5의 배수일 때는 숫자 대신 buzz
  4. 그 숫자가 15의 배수일 때는 숫자 대신 fizzbuzz 를 출력
1for i in range(1, 101):
2    if i % 15 == 0 :
3        print('fizz')
4    elif i % 5 == 0 : 
5        print('buzz')
6    elif i % 3 == 0 :
7        print('fizzbuzz')
8    else : 
9        print(i)

Algorithms : 소수 판별

  1. 1 ~ 1000까지 숫자 중에 소수만 출력

소수는 1과 자기자신으로만 나누어 떨어지는 숫자

1for i in range(1, 1001):
2    key = True
3    for j in range(2, i):
4        if i % j == 0:
5            key = False
6            break
7    if key:
8        print(i)