ip地址转换python
时间: 2023-08-10 07:40:01 浏览: 46
将IP地址转换为十进制数的Python代码:
```python
import socket
ip_address = "192.168.0.1"
ip_decimal = int(socket.inet_aton(ip_address).hex(), 16)
print(ip_decimal)
```
将十进制数转换为IP地址的Python代码:
```python
import socket
ip_decimal = 3232235521
ip_address = socket.inet_ntoa(int.to_bytes(ip_decimal, 4, 'big'))
print(ip_address)
```
相关问题
python合法ip地址转换
Python中可以使用socket库的inet_aton和inet_ntoa函数来进行IP地址的转换。
1.将IP地址转换成32位无符号整数:
```
import socket
ip_str = "192.168.1.1"
ip_int = socket.inet_aton(ip_str)
print(ip_int)
```
2.将32位无符号整数转换成IP地址:
```
import socket
ip_int = b'\xc0\xa8\x01\x01'
ip_str = socket.inet_ntoa(ip_int)
print(ip_str)
```
注意,在Python 3中,inet_aton和inet_ntoa函数的参数需要是bytes类型,因此在传入字符串之前需要先进行编码,例如:
```
import socket
ip_str = "192.168.1.1"
ip_bytes = ip_str.encode()
ip_int = socket.inet_aton(ip_bytes)
print(ip_int)
ip_int = b'\xc0\xa8\x01\x01'
ip_bytes = socket.inet_ntoa(ip_int).encode()
ip_str = ip_bytes.decode()
print(ip_str)
```
pythonip地址转换
在 Python 中,可以使用 socket 模块来进行 IP 地址和主机名之间的转换。下面是一个简单的示例代码,将一个主机名转换为 IP 地址:
```python
import socket
hostname = 'www.baidu.com'
ip_address = socket.gethostbyname(hostname)
print(ip_address)
```
输出结果为:
```
220.181.38.148
```
如果要将 IP 地址转换为主机名,可以使用 gethostbyaddr() 方法:
```python
import socket
ip_address = '220.181.38.148'
hostname = socket.gethostbyaddr(ip_address)[0]
print(hostname)
```
输出结果为:
```
www.baidu.com
```