树莓LCD IP显示格式



我正在用树莓派做一个小项目,我需要在LCD屏幕上显示Pi的IP地址。

我遵循这个教程:https://learn.adafruit.com/drive-a-16x2-lcd-directly-with-a-raspberry-pi/python-code

它似乎工作得很好,但是有一个问题显示IP。它显示的不是"192.168.0.68",而是"fe80::779b:a7a1:9282:f4d5"。它显示的时间很好("Sep 19 18:20:41")。

作为一个编程新手,我找不到问题,所以我在这里寻求帮助

我发现netifaces包对于获取IP地址很有用。下面的链接很好地解释了它的基本用法

https://pypi.python.org/pypi/netifaces

下面是一个在python解释器中获取ip地址的例子。

>>>import netifaces
>>>addr = netifaces.ifaddresses('en1')
>>>addr
{18: [{'addr': 'e4:ce:8f:30:98:0c'}], 2: [{'broadcast': '192.168.1.255', 'addr': '192.168.1.22', 'netmask': '255.255.255.0'}], 30: [{'addr': 'fe80::e6ce:8fff:fe30:980c%en1', 'netmask': 'ffff:ffff:ffff:ffff::'}]}
>>>addr[netifaces.AF_INET][0]['addr']
'192.168.1.22'

注意:我使用'en1',因为我是在Mac上。在Pi通常这将是'eth0'

最新更新