昨天我在一次采访中被问到一个问题,即实施getIPAdrress(),它可以返回与其运行的OS无关的系统的IP地址。
我尝试使用os,subprocess module编写它。我首先检查os名称,然后根据我使用子进程触发命令(ipconfig \ ifconfig),然后从那里查找并返回IP地址。
我知道这种做法并不像所说的那样好。我被进一步要求我选择的一些设计模式做同样的事情,基本上无论os是什么都可以运行,好像现在我的函数只能在windows和linux中运行os。
有了这篇文章我想知道是否有更好的方法。
谢谢, 学习忍者
答案 0 :(得分:0)
这是一种有趣的方式来获得面向外部的IP跨平台。
import urllib
url = "http://checkip.amazonaws.com/"
response = urllib.urlopen(url).read().rstrip()
print response