for문 작성하기

허선우·2021년 5월 22일
0

PYTHON

목록 보기
1/17
post-thumbnail

# 😉 파이썬 for문 작성하기

문법 설명
특정코드를 여러번 반복하여 실행하고 싶을때
조건이 성립한다면 실행하는 while문과는 달리
몇 번 반복하는가?를 말할때 사용한다.

1. 기본 for문

예시1

for i in range(10):
	print(i)

결과
0123456789

예시2

# 숫자를 입력받아 1부터 입력받은 숫자만큼 별을 출력하라. 
#숫자를입력하세요~2
#★
#★★
a = input('숫자를 입력하세요')    
for i in range(1,int(a)+1):
    print('★'*i)

숫자를 입력하세요  4
★
★★
★★★
★★★★

2.for-if문

for문 안에 if 조건절을 넣어서 조건절이 성립할 때만 for문을 실행하는 코드를 만들 수 있다.

for i in range(100):
if i%2 ==0:
print(i)
결과 - 짝수 출력

예시

#문제 36. 파이썬으로 통계문제 풀기 7
#주사위와 동전을 동시에 던져서 주사위의 눈이 6이 나오고
#동전이 앞면이 나오는 확률을 구하시오

dice =[1,2,3,4,5,6]
coin = ['앞면','뒷면']
cnt = 0

for i in range(1000):
    coin_result = random.choice(coin)
    dice_result = random.choice(dice)
    if coin_result == '앞면' and  dice_result == 6:
        cnt = cnt +1
        
print(cnt_coin/1000)

for - break 문

for문의 조건절이 성립한다면 break(반복문을 종료)하는 코드를 만들 수 있다.

예시

#문제 51. 1부터 100까지 출력하는 for loop문을 작성하는데 
#다음과 같이 숫자를 물어보게 해서 입력된 숫자까지만 출력되게 하라.(break 사용)

#숫자를 입력하세요  ~7
a = input('숫자를 입력하세요')
for i in range(1,101):
    if i == int(a)+1:
        break
    print(i)

결과
숫자를 입력하세요~7
1234567 ->8에 break 즉, 이후의 프린트 문이 출력되지 않는다

for - continue 문

for문 안의 조건절이 성립할때 그 조건은 넘어가게(skip)하는 문법을 만들 수 있다.

예시

#짝수만 출력
for i in range(1,11):
    if i%2 == 1:
        continue
    print(i)

예시

숫자를 입력받아 입력받은 숫자 까지 수를 출력하고 정상적으로 출력이 되면 perfect이란 단어를 출력하라.
a = int(input('숫자를 입력하세요))

for i in range(1,a+1):
    print(i)
else:
    print('perfect')
    
#결과
숫자를 입력하세요~5
12345
perfect
위의 문장을 수정하여 건너 뛸 숫자를 입력받으세요.
a = int(input('숫자를 입력하세요'))
b = int(input('건너 뛸 숫자를 입력하세요'))

for i in range(1,a+1):
    if i == b:
        continue
    print(i)
else:
    print('perfect')
    
#결과
숫자를 입력하세요~5
건너 뛸 숫자를 입력하세요~3
1245
perfect
위의 코드를 수정하여 중단할 숫자를 입력받으세요
a = int(input('숫자를 입력하세요'))
b = int(input('건너 뛸 숫자를 입력하세요'))
c = int(input('중단 할 숫자를 입력받으세요'))

for i in range(1,a+1):
    if i == b:
        continue
        
    print(i)
    
    if i == c:
        break
else:
    print('perfect')
    
#결과
숫자를 입력하세요~10
건너 뛸 숫자를 입력하세요~3
중단할 숫자를 입력하세요~7
124567

0개의 댓글