Python Glossary English

все 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Сообщить о неточности