Что такое Socket
Python
Middle
Без компании
Что такое Socket
Ответы
Сокет (socket) — это программный интерфейс для обмена данными между процессами, часто через сеть. В Python модуль `socket` предоставляет низкоуровневый API для работы с сетевыми соединениями (TCP/IP, UDP и др.).
**Пример TCP-сервера и клиента:**
```
# Сервер
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('localhost', 12345))
s.listen(1)
conn, addr = s.accept()
print('Connected:', addr)
conn.send(b'Hello, client!')
conn.close()
# Клиент
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('localhost', 12345))
print(s.recv(1024)) # Вывод: b'Hello, client!'
s.close()
```
**Ключевые моменты:**
- `AF_INET` — IPv4, `SOCK_STREAM` — TCP, `SOCK_DGRAM` — UDP.
- Сокеты бывают клиентскими и серверными.
- Важно закрывать соединения (`close()`).
- Для высокоуровневых задач лучше использовать `requests`, `aiohttp` и т.д.