2016-06-09 6 views
-4

Я занимаюсь программированием сокетов в python и нахождением сообщения. Это мой код .....Python NameError: name 'name' не определен

import socket 

    def Main(): 
      host = '127.0.0.1' 
      port = 5000 
      s = socket.socket() 
      s.bind((host,port)) 
      s.listen(2) 
      c, addr = s.accept() 
      print "Connecton from : " + str(addr) 
      while True: 
         data = c.recv(1024) 
         if not data: 
           break 
         print "from connected User:" + str(data) 
         data = str(data).upper() 
         print "sending: " + str(data) 
          c.send() 
      c.close 

    if _name_ == '_main_': 
     Main() 

и я Получать сообщение как

'File "tcpserver.py", line 21, in if name == 'main': NameError: name 'name' is not defined'

+2

Вместо этого используйте '__name__'. – Keatinge

+1

... и это * two * подчеркнуть каждую сторону '' __main __ ''. – cdarke

+0

... и в соответствии с [Руководством по стилю для кода Python] (https://www.python.org/dev/peps/pep-0008/) эту функцию следует называть 'main()' (строчной). – Matthias

ответ

0

Ну, это должно быть:

if __name__ == '__main__': 
    Main() 

С два (2) подчеркивания для обоих.

Смежные вопросы