不是100%这篇文章的标题。这是一个非常简单的问题
首先我跑了:
os.system("netsh interface show interface")
想通了我的无线网络被称为“Wi-Fi 2”
然后我想制作两个简单的功能来打开和关闭
import os
def enable():
os.system("netsh interface set interface 'Wi-Fi 2' enabled")
def disable():
os.system("netsh interface set interface 'Wi-Fi 2' disabled")
还尝试了一些其他方式,如
interface "+"Wi-Fi 2"+" disabled")
当我调用disable但它给了我这个错误:
2 is not an acceptable value for admin.
The parameter is incorrect.
它正在读取2作为一个单独的参数(通过尝试Wi-Fi 3确认,它表示3不是可接受的值)。
我不是以某种方式正确地做这个字符串吗?不知道为什么会发生这种情况,我宁愿不必重命名Wifi,因为这只是一个糟糕的工作而不是理解问题并修复它。
由于
答案 0 :(得分:1)
在 Win cmd shell中(虽然不限于 Win ), SPACE ( ASCII 0x20 ( 32 ))是一个分隔符(或者:其中之一),这意味着在遇到 SPACE时解析一系列字符,之前的内容将被视为一个令牌,而之后的内容将被视为另一个令牌(依此类推)。
reverse (如果你愿意)是 dblquote (“或 ASCII 0x22 < / em>( 34 )):2个这样的字符之间包含的内容将被视为一个标记,无论它是否包含 SPACE 。
这适用于:
dir c:\Program Files
失败,而dir "c:\Program Files"
工作的原因 - 后者应该被使用)这是从 OS 的角度来看需要做的事情,我们仍然需要处理 Python 字符串(包装所有这些)。它可以通过以下两种方式完成:[Python]: String literals:
os.system("netsh interface set interface \"Wi-Fi 2\" enabled")
os.system('netsh interface set interface "Wi-Fi 2" enabled')