반응형
오늘도 아마 별다른 매매는 없을 것 같지만, 프로그램 에러가 떠 있어서 확인해 보았습니다.
'Type error : not enough arguments for format string'
이 에러는 변수 갯수와 변수에 들어갈 데이터 갯수가 안맞을 때 발생하는 에러였습니다.
프로그램 상 물타기로 지정해둔 곳에서 발생했는데,
아무리 봐도 변수와 데이터 갯수는 일치합니다. 전혀 문제가 없죠. 그런데 왜 에러가 떴습니다.
그리고, 물타기 코드가 여러개가 있는데 그 중 한 곳에서만 발생해서 계속 보다보니 차이가 있었습니다.
# 오류안생김
self.logging.logger.debug("%s %s주 실시간 1차 물타기 조건통과" % (code_nm, quantity))
# 오류생김
self.logging.logger.debug("%s %s주 -10%미만 종목 실시간 1차 물타기 조건통과" % (code_nm, quantity))
첫번째 코드는 오류가 안생기고, 두번째 코드는오류가 생깁니다.
오류가 보이실까요?
코린이는 이런걸 아무렇지 않게 쓰고 지나갔는데, 계좌에 -10%가 넘어가는게 생기다보니 드디어 문제가 나타난 것입니다.
슬프군요..
원인은 -10%의 '%'기호 때문이었습니다.
#수정전
self.logging.logger.debug("%s %s주 -10%미만 종목 실시간 1차 물타기 조건통과" % (code_nm, quantity))
#수정후
self.logging.logger.debug("%s %s주 -10퍼미만 종목 실시간 1차 물타기 조건통과" % (code_nm, quantity))
이렇게 -10%를 -10퍼 로만해줘도 코딩은 아무 오류없이 깔끔하게 돌아갑니다.
왜 %를 인식해버리는 것인지 까지는 잘 모르겠지만, 어쨌든 오류는 해결이 되었습니다.
오늘의 레슨
1) 변수와 데이터 갯수가 맞지 않으면 Type error : not enough arguments for format string 가 발생한다.
2) 파이썬에서 %가 붙으면 변수로 인식할 수 있다.
반응형
'주식공부 > 파이썬 주식' 카테고리의 다른 글
파이썬으로 코스피와 환율관계를 그려보기(feat.human) (0) | 2022.12.13 |
---|---|
파이썬으로 볼린저밴드를 만들어보기(feat. chatGPT) (2) | 2022.12.13 |
파이썬 판다스 에러 / ValueError: Columns cannot be a set (2) | 2022.12.02 |
vscode에서 pip 오류가 뜨는 경우. / 'pip' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. (0) | 2022.12.01 |
파이썬 주식, 지지선과 저항선 순번 매기기 - 1 (2) | 2022.10.03 |