все Python 3socketфункция
socket.inet_pton()
преобразование адресов и порядка байтов
Переводит IPv4- или IPv6-адрес из строки в байты (4 или 16) по указанному семейству адресов.
Синтаксис
socket.inet_pton(address_family, ip_string) -> bytes
В отличие от inet_aton, строга: '127.1' для AF_INET отвергается OSError. Семейство нужно назвать явно, само оно не угадывается: IPv6-адрес с AF_INET тоже даст OSError. Для разбора с проверкой и без знания семейства заранее удобнее ipaddress.ip_address(s).packed.
Примеры
import socket
print(len(socket.inet_pton(socket.AF_INET6, '::1'))) # → 16
print(socket.inet_pton(socket.AF_INET, '10.0.0.1')) # → b'\n\x00\x00\x01'
socket.inet_pton(socket.AF_INET, '127.1') # → OSError: illegal IP address string passed to inet_pton
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности