IPv4Range creates objects like be 10.0.0.0-10.0.0.101
Project description
📄 IPv4Range
Установка
pip install ipv4-range
Описание
IPv4Range — это класс для работы с диапазонами IPv4-адресов.
Он позволяет:
- Создавать диапазоны из строки (
10.0.0.0-10.0.0.100), списка адресов или сети (10.0.0.0/24); - Проверять, является ли диапазон корректной сетью;
- Преобразовывать диапазон в
IPv4Network; - Итерацию по IP-адресам внутри диапазона;
- Сравнение диапазонов и сетей;
- Проверку вхождения IP-адреса в диапазон.
Использование
Создание диапазона
from ipv4_range import IPv4Range
rng = IPv4Range('10.0.0.0-10.0.0.100')
print(rng) # 10.0.0.0-10.0.0.100
Создание из начала и конца
from ipaddress import IPv4Address
rng = IPv4Range.from_start_and_end(IPv4Address('10.0.0.1'), IPv4Address('10.0.0.10'))
print(rng) # 10.0.0.1-10.0.0.10
Создание из списка IP
rngs = IPv4Range.from_ips(
'10.0.0.1', '10.0.0.2', '10.0.0.3',
'10.0.0.10', '10.0.0.11'
)
# Результат: [10.0.0.1-10.0.0.3, 10.0.0.10-10.0.0.11]
Создание из сети
rng = IPv4Range.from_network('10.0.0.0/24')
print(rng) # 10.0.0.0-10.0.0.255
Проверка, является ли диапазон сетью
rng = IPv4Range('10.0.0.0-10.0.0.255')
print(rng.is_network) # True
Преобразование в IPv4Network
rng = IPv4Range('10.0.0.0-10.0.0.255')
net = rng.to_network()
print(net) # 10.0.0.0/24
Проверка вхождения IP в диапазон
rng = IPv4Range('10.0.0.0-10.0.0.10')
print('10.0.0.5' in rng) # True
print('10.0.0.20' in rng) # False
Итерация
rng = IPv4Range('10.0.0.1-10.0.0.3')
for ip in rng:
print(ip)
# 10.0.0.1
# 10.0.0.2
# 10.0.0.3
Длина диапазона
rng = IPv4Range('10.0.0.0-10.0.0.255')
print(len(rng)) # 256
Сравнение
rng1 = IPv4Range('10.0.0.0-10.0.0.255')
rng2 = IPv4Range.from_network('10.0.0.0/24')
print(rng1 == rng2) # True
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ipv4_range-0.1.1.tar.gz
(6.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ipv4_range-0.1.1.tar.gz.
File metadata
- Download URL: ipv4_range-0.1.1.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1549da6e58d7f2d1d8a77ef97ee9a9c7dc5941777ea0ef0885535bbf03db860
|
|
| MD5 |
a8eeb1d3ad0d21f213393fb041ff44c8
|
|
| BLAKE2b-256 |
136e679f6c35cbff0b29c26413bd39472b3253b2daec9e0463ac41266b7bc1b7
|
File details
Details for the file ipv4_range-0.1.1-py3-none-any.whl.
File metadata
- Download URL: ipv4_range-0.1.1-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c1e27bfff8aa422b5670347c7843b32580984bcd8ad7a78eed83ec65f786869
|
|
| MD5 |
5f53c0fcf424ff171b10fc1f5f4ff21e
|
|
| BLAKE2b-256 |
5849d2c08249de8e4c0fa23006246654bba8f9ebe58820acb7854e931236ca93
|