Python Basic 3 | if, for, while

devheyrin·2022년 1월 3일
0

python basic

목록 보기
3/19

if 조건문에서 코드를 생략하기

조건식만 작성하고 본문 코드를 생략한 뒤, 추후 작성하고 싶은 경우 다음처럼 작성할 수 있다.

if x = 10:
    pass # TODO : x가 10일때 처리가 필요함

if 조건문의 동작(True, False, None)

True, 0이 아닌 정수, 실수, 내용이 있는 문자열은

False, None, 0, 빈 문자열, 리스트, 튜플, 딕셔너리, 세트는 거짓으로 취급한다.

if True:
    print('참')    # True는 참
else:
    print('거짓')
 
if False:
    print('참')
else:
    print('거짓')    # False는 거짓
 
if None:
    print('참')
else:
    print('거짓')    # None은 거짓

for문 순서 뒤집기

for i in range(10, 0, -1):
    print(i)
# 10
# 9 
# 8 
...
# 1 
for i in reversed(range(10)):
# 9
# 8
...
# 1
# 0

while문 입력한 횟수대로 반복하기

count = int(input())

i = 0
while i < count:
    print('Hello world', i)
		i += 1 	

# 초깃값을 입력받아 출력하기 
count = int(input())
while count > 0:
		print('Hello world', count)
		count -= 1

반복 횟수가 정해지지 않은 while문

3이 나올 때까지 주사위를 계속 던지는 반복문

import random    # random 모듈을 가져옴
 
i = 0
while i != 3:    # 3이 아닐 때 계속 반복
    i = random.randint(1, 6)    # randint를 사용하여 1과 6 사이의 난수를 생성
    print(i)

random.choice로 시퀀스 객체에서 랜덤 요소 선택

dice = [1, 2, 3, 4, 5, 6]
random.choice(dice)

무한 반복 while문

while 1:
	print('Hello world!)

while True:
	print('Hello world!)
🌟 while반복문은 조건식이 참일때 반복하고 거짓일때 반복문을 끝낸다. for문은 반복 횟수가 정해져 있을 때, while문은 반복 횟수가 정해져 있지 않을 때 자주 사용한다.

continue

반복문에서 실행을 건너뛰기 위해서 사용한다. 카드 게임 중 패가 좋지 않으면 턴을 한 번 넘기는 것처럼 생각하면 된다! 반복문 안에서 continue가 실행되면 아래의 코드를 실행하지 않고 건너뛴 다음 다음 반복으로 넘어간다.

i = 0
while i < 100:        # i가 100보다 작을 때 반복. 0부터 99까지 증가하면서 100번 반복
    i += 1            # i를 1씩 증가시킴
    if i % 2 == 0:    # i를 2로 나누었을 때 나머지가 0이면 짝수
        continue      # 아래 코드를 실행하지 않고 건너뜀
    print(i)
for i in range(100):       # 0부터 99까지 증가하면서 100번 반복
    if i % 2 == 0:         # i를 2로 나누었을 때 나머지가 0면 짝수
        continue           # 아래 코드를 실행하지 않고 건너뜀
    print(i)

별 찍기 - 중첩 for문

# 5*5 정사각형 별 찍기 

for i in range(5):  # 세로줄 담당
    for j in range(5):  # 가로줄 담당
        print('*', end='')
    print()
# 역삼각형 별 찍기 
for i in range(5):  # 세로줄 담당
    for j in range(5):  # 가로줄 담당
        if i <= j:
            print('*', end='')
        else:
            print(' ', end='')
    print()
# 입력된 높이만큼 산 모양으로 별 찍기
n = int(input())
for i in range(1, n+1):  # 세로줄 담당
    for j in range(1, n*2):  # 가로줄 담당
        if j <= n-i or j >= n+i:
            print(' ', end='')
        else:
            print('*', end='')
    print()

FizzBuzz

for i in range(1, 101):
    if i % 15 == 0: # 3과 15의 공배수 => 가독성을 위해 풀어 쓰는 것이 좋다. 
        print('FizzBuzz')
    elif i % 5 == 0:
        print('Buzz')
    elif i % 3 == 0:
        print('Fizz')
    else:
        print(i)
for i in range(1, 101):
    if i % 3 == 0 and i % 5 == 0:  # 가독성을 위해 풀어서 작성 
        print('FizzBuzz')
    elif i % 5 == 0:
        print('Buzz')
    elif i % 3 == 0:
        print('Fizz')
    else:
        print(i)

Turtle Graphics

다각형 그리고 색칠하기

import turtle

# n = int(input())
n = 6
turtle.shape('turtle')
turtle.color('yellow')  # 펜의 색 설정
turtle.begin_fill()  # 색칠할 영역 시작
for i in range(n):
    turtle.forward(100)
    turtle.right(360 / n)
turtle.end_fill()  # 색칠할 영역 끝

turtle.mainloop()

원 그리기

import turtle

# n = int(input())
n = 500
turtle.shape('turtle')
turtle.speed('fastest') # 속도 설정
for i in range(n):
    turtle.circle(200)
    turtle.right(360 / n)

turtle.mainloop()

별 그리기

import turtle as t

n, line = map(int, input().split())
t.shape('turtle')
t.speed('fastest')
for i in range(n):
    t.forward(line)
    t.right((360/n)*2)
    t.forward(line)
    t.left((360/n))
    
t.mainloop()

약수 찾기

x = 9
for i in range(1, x+1):
		if x % i == 0:
				print(i, '는 x의 약수')
profile
개발자 헤이린 🔜 프로덕트 매니저로 나아가는 중!

0개의 댓글