检查ip是否在Raspberry上的Python范围内

检查ip是否在Raspberry上的Python范围内,python,ip,raspberry-pi,Python,Ip,Raspberry Pi,我花了两天的时间试图解决我的问题。但无论我尝试什么,它都不会起作用 树莓的ip:192.168.1.129 import socket import fcntl import struct #import time def get_ip_address(ifname): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) return socket.inet_ntoa(fcntl.ioctl( s.filen

我花了两天的时间试图解决我的问题。但无论我尝试什么,它都不会起作用

树莓的ip:192.168.1.129

import socket
import fcntl
import struct
#import time

def get_ip_address(ifname):
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    return socket.inet_ntoa(fcntl.ioctl(
        s.fileno(),
        0x8915,  # SIOCGIFADDR
        struct.pack('256s', ifname[:15])
    )[20:24])

#print get_ip_address('lo')
#print get_ip_address('eth0')
#print get_ip_address('wlan0')

shortip = get_ip_address('wlan0')[:3]
#print shortip

if shortip in range(1, 255):    
   print get_ip_address('wlan0')
else:
   print 'No connection'
当我取消标记print get_ip_address(“wlan0”)时,我得到一个结果:192.168.1.129

import socket
import fcntl
import struct
#import time

def get_ip_address(ifname):
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    return socket.inet_ntoa(fcntl.ioctl(
        s.fileno(),
        0x8915,  # SIOCGIFADDR
        struct.pack('256s', ifname[:15])
    )[20:24])

#print get_ip_address('lo')
#print get_ip_address('eth0')
#print get_ip_address('wlan0')

shortip = get_ip_address('wlan0')[:3]
#print shortip

if shortip in range(1, 255):    
   print get_ip_address('wlan0')
else:
   print 'No connection'
当我解开短码时,我得到一个结果:192

那应该在范围之内

但我只得到“没有联系”的结果

你知道为什么会这样吗?
谢谢大家!

shortip
是一个字符串。因此,它将永远不在任何
范围内
。在进行比较之前,将其转换为
int
。谢谢。。。这会有用的!我真的很感谢你的帮助。