PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2016/07/22 00:51:49
Name Patrick Jane
Subject [질문] 파이썬 프로그래밍 질문입니다
현재 날짜를 파일로 입력받아서 해당 요일 1년후가 금요일인지 확인하는 프로그램을 짜고있습니다.
텍스트 파일은 월(영어로) 21, 2006
이런식으로 되어있습니다. 우선 제가 짠 코드는



import datetime
month=['January','February','March','April','May','June','July','August','September','October','November','December']
fri_find=open('date.txt','r')
count=0
while True:
    str=fri_find.readline()
    if not str: break
    input_list=str.split()

    year=int(input_list[2])

    month_2=month.index(input_list[0])+1
    day=int(input_list[1][0:-1])
    d=datetime.date(year,month_2,day)
    if d.weekday()==4:
       count+=1
print(count)

이렇게 코드를 작성했는데요, 문제는 1년후를 위해서 단순하게 year값에 +1시키니까 자꾸 out of range에러가 나더라구요...
혹시 어떤점이 문제인지 아시는분 있을까요?

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
16/07/22 01:07
수정 아이콘
그냥 코드 복사하고 텍스트파일 간단하게 만들어서 year에 1 추가시켜봤는데 잘 작동되는것 같은데요..
Patrick Jane
16/07/22 01:32
수정 아이콘
Traceback (most recent call last):

d=datetime.date(year+1,month_2,day)
ValueError: day is out of range for month

이런 에러가 자꾸나네욥;;;;
16/07/22 01:11
수정 아이콘
딱히 문제는 없어 보이는데, 혹시 텍스트 파일 끝에 빈 줄이 있는 것 아닌가 싶은데요. readline 부분을 str=fri_find.readline().strip() 으로 바꿔보세요. 개행 문자때문에 if not str: 구문에서 걸리지 않으니 아래 쪽에서 index out of range 에러가 날 수 있어요.
Patrick Jane
16/07/22 01:33
수정 아이콘
말씀하신것처럼 바꿔도 똑같은 에러가 나네요....
Patrick Jane
16/07/22 01:34
수정 아이콘
아 참고로저는 python3 IDLE인가 거기서 작업하고있습니당.
그리고 날짜 파일은 https://gist.github.com/LiamRahav/0cbf82b8bc3a41deafc0403f1b1dd573 이곳에 있습니다
16/07/22 01:42
수정 아이콘
날짜 파일에 February 29, 2004 가 있습니다. 2005년에는 2월 29일이 없어서 에러가 나네요.
Patrick Jane
16/07/22 01:46
수정 아이콘
아하... 감사합니다!!!! 이런문제가...
16/07/22 01:43
수정 아이콘
그러면 이건 윤년 문제네요. 데이터 파일에 보면 2004년 2월 29일이 있는데 2005년 2월에는 29일이 없죠. 이런 경우는 예외처리 하셔야겠네요!
Patrick Jane
16/07/22 01:46
수정 아이콘
이걸 생각못하다니.... 저는 참바보같아요.... 답변감사합니다!!
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
86928 [질문] PGR 회원레벨 중 5레벨은 뭔가요? [7] Nasty breaking B2858 16/07/22 2858
86927 [질문] 안드로이드폰에서 SD카드에 영화 넣어서 볼 때요 [2] 이밤이저물기전에2882 16/07/22 2882
86926 [질문] 일본 노천여행 질문입니다 [3] AspenShaker2810 16/07/22 2810
86925 [질문] 스팀 게임추가시 중복제품코드라고 뜰때 [4] 아리아리해5800 16/07/22 5800
86924 [질문] pgr게시판 사진 첨부 [5] luvletur3050 16/07/22 3050
86923 [질문] 운전면허 적성검사 신체검사 질문좀드려요 [6] 크로미4064 16/07/22 4064
86922 [질문] 해외출장(벤치마킹) 시 기관 섭외 관련 질문드려요. 토꺙2818 16/07/22 2818
86921 [질문] 그래픽카드가 더워요, 추천 부탁드립니다 [6] ComeAgain3402 16/07/22 3402
86920 [질문] 방송인 홍진호 요즘 뭐하나요? [8] 혜지5765 16/07/22 5765
86919 [질문] 병원.. 어느과를 가야 할까요? [9] 블랙엔젤3073 16/07/22 3073
86918 [질문] 5~6명이 네트워크 공유로 쓰기 적절한 pc 질문입니다. [2] 오상현2213 16/07/22 2213
86917 [질문] 아파트 매매, 어느 동네가 좋을까요? [15] 삭제됨6430 16/07/22 6430
86916 [질문] 클로저스 지금해봐도 괜찮나요? [3] 자판기냉커피2877 16/07/22 2877
86915 [질문] 명연설가는 누가 있나요? [7] 물범3797 16/07/22 3797
86913 [질문] 엑셀 하이퍼링크 관련 무더니2545 16/07/22 2545
86912 [질문] 떼껄룩에게 폭행을 당했습니다. [9] 나이스데이5652 16/07/22 5652
86911 [질문] 보일러가 저절로 작동합니다. [2] 나만한량6480 16/07/22 6480
86910 [질문] 다이렉트 게임즈에 대한 질문입니다. [5] 맥아담스3926 16/07/22 3926
86909 [질문] 서울 근처 단체로 수상 스포츠 즐길 수 있는 곳이 어디 있을까요? 어디쯤에2230 16/07/22 2230
86908 [질문] 옆집 소음 어떻게 해야 할까요? [11] 새벽바람9830 16/07/22 9830
86907 [질문] 여권을 하루만에 재발급하는 방법은 없을까요;; [10] 하이바라아이6756 16/07/22 6756
86906 [질문] 취미가 게임인게 두통이랑 뭔 상관이있죠? [31] 세작5123 16/07/22 5123
86905 [질문] 백팩 2가지 중 어떤게 괜찮을까요? [4] 토폴로지3498 16/07/22 3498
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로