在Python中,你可以使用`socket`模块来获取本地IP地址,以及使用第三方库如`requests`来获取外网IP地址。以下是获取本地和外网IP地址的示例代码:
获取本地IP地址
import socketdef get_local_ip():hostname = socket.gethostname()local_ip = socket.gethostbyname(hostname)return local_ipprint("本地IP地址为:", get_local_ip())
获取外网IP地址
import requestsdef get_external_ip():try:response = requests.get('http://1212.ip138.com/ic.asp')response.raise_for_status()ip = response.text.split('[').split(']')return ipexcept:return "无法获取外网IP地址"print("外网IP地址为:", get_external_ip())
请注意,这些方法获取的IP地址可能会受到网络配置等因素的影响。如果你需要获取本机所有IP地址,可以使用`netifaces`库:
import netifacesdef get_all_ips():ips = []exclude_iface = ['lo']interfaces = netifaces.interfaces()for iface in interfaces:if iface not in exclude_iface:if netifaces.AF_INET in netifaces.ifaddresses(iface):for addr in netifaces.ifaddresses(iface)[netifaces.AF_INET]:if not addr['addr'].startswith('127.'):ips.append(addr['addr'])return ipsprint("所有IP地址为:", get_all_ips())
这些代码示例应该可以帮助你获取本地和外网IP地址。

