TypeError: 'module' object is not callable
조회수 3325회
에러 내용
File "C:\Users\Administrator\Documents\Mibot\oops\blinkserv.py", line 82, in __init__
self.serv = socket(AF_INET,SOCK_STREAM)
TypeError: 'module' object is not callable
발생하는 문제 및 실행환경
이런 에러가 나는데 왜 저 줄에서 에러가 발생하는지 모르겠습니다.
다들 저렇게 쓰던것 같던데 왜 제 코드만 실행이 안될까요?
1 답변
-
socket은 socket 클래스를 포함하고 있는 모듈입니다. 모듈은 그 자체로는 호출할 수 없기 때문에 에러가 발생합니다.
"다들 저렇게 쓰던 것 같던데" 라고 하신걸 보면 아마 다른 코드를 보고 똑같이 적으신 것 같은데 그 코드를 자세히 보면
from socket import socket
으로 시작했을 거고, 작성자께서는
import socket
일 겁니다.
코드에서
- import하는 부분을
from socket import socket
로 고침 - socket쓰는 부분을
self.serv = socket.socket(AF_INET,SOCK_STREAM)
으로 고침
둘 중 하나를 써서 고치면 정상적으로 작동할 겁니다.
- import하는 부분을
댓글 입력