ошибка Python: у объекта 'module' нет атрибута 'AF_UNIX' - PullRequest
4 голосов
/ 23 февраля 2011

это мой код Python:

if __name__ == '__main__':  
    import socket  
    sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)  
    sock.connect(('0.0.0.0', 4000))  
    import time  
    time.sleep(2)  
    #sock.send('1')
    print sock.recv(1024)  
    sock.close()  

он показывает:

Traceback (most recent call last):
  File "D:\Program Files\test\test\python\client.py", line 3, in <module>
    sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
AttributeError: 'module' object has no attribute 'AF_UNIX'

что я могу сделать,

спасибо

обновлено:

Traceback (most recent call last):
  File "D:\Program Files\test\test\python\client.py", line 4, in <module>
    sock.connect(('0.0.0.0', 4000))
  File "<string>", line 1, in connect
socket.error: (10049, "Can't assign requested address")

1 Ответ

6 голосов
/ 23 февраля 2011

При создании объекта сокета в Windows вы должны сделать:

 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

AF_INET для интернет-адресов и AF_UNIX для межпроцессного взаимодействия UNIX. Последний, очевидно, доступен только на платформах UNIX.

Кроме того, следуйте этому примеру , чтобы найти, как реализовать простой сокет-сервер и клиент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...