Python判断是否连接指定WiFi网络时比较不生效问题求助
问题分析与解决
核心错误:判断条件中未调用函数,而是直接引用了函数对象。
str(get_network_name)会把函数本身转换成类似<function get_network_name at 0x...>的字符串,这显然和"T2"不匹配,因此逻辑会进入else分支。修正后的判断代码:
home_network = "T2" current_network = get_network_name() # 调用函数获取当前网络名称 if current_network == home_network: print("you are connected to T2 network (home network)") else: print("you are not on home network \n current network name is ", current_network)
- 额外优化建议:
netsh输出的SSID可能附带前后空白字符,建议在函数中对结果做去空格处理,避免因为隐藏空白导致比较失败:
def get_network_name(): out = subprocess.check_output('netsh wlan show interfaces').decode("utf-8") for line in out.split("\n"): if "SSID" in line: # 使用strip()去除字符串前后的空白字符 return line.split(": ")[1].strip()
内容的提问来源于stack exchange,提问作者youssef osama
相关产品推荐
相关产品推荐

