도구들/R,파이썬

[파이썬] for 문으로 년월일 출력해보기(다중 for문), range() 로 숫자 리스트 만들기

cactus 2022. 8. 1. 22:58

1부터 100까지 숫자를 리스트 형태로 만들고 싶은 경우

list=[1,2,3 ...] 이런식으로 일일히 입력하지 않고

range 함수를 통해서 숫자 리스트를 만들 수 있다.

 

1부터 10까지 숫자 리스트를 만들려고 하는 경우는 range(1,11)라고 적으면 된다.

*파이썬에서는 범위의 마지막 숫자보다 하나 더 큰 값을 지정해야 해당 값이 포함된다.

해당 리스트를 확인하고 싶을 경우는, 아래처럼 range를 list 안에 넣은 형태로 출력해야 한다.

range 의 리스트 요소를 확인하고 싶으면 list(range)로 확인한다.

 

이제 for 문을 이용해서 년월일을 출력해 보자.

년도(years)는 2020년부터 2022년, ->  range(2020,2023)

월(months)은 1월부터 12월, -> range(1,13)

일(days)은 1일부터 31로 해보자. -> range(1,32)

 

아래처럼 입력해서 년월일 리스트를 생성할 수 있을 것이다.

years=range(2020,2023)
months=range(1,13)
days=range(1,32)

리스트를 프린트 해서 확인 가능하다.

 

for 반복문은 반복할 범위(리스트) 와 요소를 지정하면 된다.

년도의 경우, 년도 범위는 위에 지정한 것처럼 years, 요소는 year 라고 임의로 지정하겠다.  year 외에 i 등.. 원하는 알파벳이나 단어로 정할 수 있다.

아래처럼 for 문을 입력하고, 요소를 출력해보자. years 안의 각 년도가 출력되는걸 확인할 수 있다.

for year in years:
    print(year)

years 안의 요소를 반복해서 출력한다.

년도 외에 월, 일도 for 문 밑에 넣어 순서대로 년,월,일을 출력해 보자(print(year,month,day)).

아래처럼 for 문 안에 for 문을 넣을 수 있다. 안쪽의 for 문부터 반복된다.

for year in years:
    for month in months:
        for day in days:
            print(year,month,day)

위처럼 입력하면 순서대로 제일 처음 year, 제일 처음 month, 제일 처음 day~끝 day -> 두번째 month, 처음 day~끝day 이런 식으로 출력된다.

 

알아보기 쉽게 print 함수에 년, 월, 일 텍스트를 추가해 보자. 텍스트이므로 따옴표를 추가한다.

for year in years:
    for month in months:
        for day in days:
            print(year,'년',month,'월',day,'일')

 

위와 같이 입력하면, 다음처럼 출력된다.

 

 

1일~31일 먼저 다 출력하고, 그 다음 달을 출력하고, 12월까지 다 출력하면 다음 년도를 순서대로 출력한다.

 

print 함수를 제일 마지막 for 문이 아니라, 각 for 문에 삽입해 보자.

년도를 먼저 출력하고, 월을 출력하고, 일을 순서대로 다 출력하고 그다음 월 출력하고.. 이런식으로 진행되는것을 확인할 수 있다.

반응형