socket real read español python tcp errno

real - socket python 3 español



¿Qué significa este socket.gaierror? (2)

Significa que su nombre de host dado '' '' no es válido (gai significa getaddrinfo() ).

Como NPE ya indica, tal vez una cadena vacía '''' sería más apropiada que un espacio '' '' .

Soy nuevo en Python y estoy revisando un libro, Core Python Applications 3rd Edition. Este es el primer ejemplo y ya estoy perplejo con él. Aquí está el código con el error al final. # 1 / usr / bin / env python

from socket import * from time import ctime HOST = '' '' PORT = 21567 BUFSIZ = 1024 ADDR = (HOST, PORT) tcpSerSock = socket(AF_INET, SOCK_STREAM) tcpSerSock.bind(ADDR) tcpSerSock.listen(5) while True: print ''waiting for connection...'' tcpCliSock, addr = tcpSerSock.accept() print "...connected from:", addr while True: data = tcpCliSock.recv(BUFSIZ) if not data: break tcpCliSock.send("[%s] %s" % (ctime(), data)) tcpCliSock.close() tcpSerSock.close() Traceback (most recent call last): File "tsTserv.py", line 12, in <module> tcpSerSock.bind(ADDR) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 224, in meth socket.gaierror: [Errno 8] nodename nor servname provided, or not known

¿Qué significa esto?


los

HOST = '' ''

tiene que leer

HOST = ''''

(es decir, no hay espacio entre las comillas).

La razón por la que recibe el error es que '' '' no es un nombre de host válido. En este contexto, '''' tiene un significado especial (básicamente significa" todas las direcciones locales ").