파이썬 for문 질문

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
파이썬 for문 질문

QA

파이썬 for문 질문

답변 3

본문

안녕하세요 파이썬 초보자 입니다.

연도를 입력 받아서 윤년이 아니면 가장 최근의 윤년을 받는 script를 for문을 이용하여 작성하려고 하는데 어떻게 해야할까요??

 

이 질문에 댓글 쓰기 :

답변 3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
while True:
    is_leap_year = None
 
    year = int(input())
 
    if year % 4 == 0:
        if year % 100 == 0:
            if year % 400 == 0:
                is_leap_year = True
            else:
                is_leap_year = False
        else:
            is_leap_year = True
    else:
        is_leap_year = False
 
    if is_leap_year:
        print(f'{year} is a leap year')
    else:
        print(f'{year} is not a leap year')
cs

 

 

for문은 아니지만 무한루프 while문 이용해서 한 코드입니다. 참고하시면 도움이 되실 것 같네요.

 

안녕하세요?

 

calendar 모듈을 활용하면 보다 쉽게 접근할 수 있습니다 ^^

 

입력받은 연도가 윤년이면 이를 그대로 출력하고,

 

아니면 그보다 가장 가까운 과거의 윤년을 출력하는 스크립트입니다.

 


from calendar import isleap
 
year = int(input('연도를 입력하세요 : '))
while True:
    if isleap(year):
        break
    year -= 1
print(f'{year}년이 윤년입니다.')

 

굳이 for 문으로 작성하시려면, while True를 for _ in range(9999) 정도로 대체하실 수 있을 것 같네요 :)

 

조금이나마 도움이 되셨기를 바랍니다~

 

그럼 편안한 저녁 되세요 ^-^

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
filter #css ×
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로