• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

함수 호출과 함수 자체 실행(?) 관련해서 질문 드립니다.

20.05.12 00:38 작성 조회수 146

1

해당 강좌를 진행하던 중 처음 w_connect window 창에서 접속하기 버튼을 누르면

NameError: name 'sock' is not defined 이라는 에러가 발생하더라구요.

이유를 찾다보니 

send_button의 인자 중 command=send_message() 로 작성되어있어 에러 발생하였던 것이고 command=send_message 로 수정하니 에러 발생 없이 동작을 합니다.

command=send_message() 

command=send_message

어떤 차이점이 있으며 해당 예제에서 각각 어떻게 동작을 하는건지 궁금합니다..

에러를 수정하긴 했으나 왜 위에는 안되고, 밑에는 되는지  이해가 잘 가지 않아 질문드립니다.. ㅠㅠ

항상 친절한 답변 감사드립니다.

답변 1

답변을 작성해보세요.

0

코드를 보지 않아 자세한 답변을 드리기는 어렵겠습니다만 질문하신 내용에 대한 답변을 드리자면..

command = send_message

는 함수를 command 변수에 에 할당하는 내용입니다. command() 를 실행해서 send_message() 를 실행한것과 같습니다.  괄호가 있는건 함수를 실행하는 내용이고 함수명에 괄호가 생략되면 함수를 변수에 할당한다는 내용입니다.