Python 通配符错误-“;无效选项“;

Python 通配符错误-“;无效选项“;,python,cmd,wildcard,Python,Cmd,Wildcard,我目前正在编写一个python脚本,其中有一个时刻我想删除一个以.txt结尾的文件 为此,我只需在python中使用os运行命令行: os.system("del working/*.txt") 运行python脚本时,我在cmd中遇到以下错误: 选项无效-“*”可以翻译为“无效选项” 似乎cmd无法识别通配符,但我对此知之甚少。为什么它不起作用 我知道我可以用正则表达式处理这种情况,但我想理解 提前感谢您在Windows中,\是路径分隔符,而不是/,因此您应该执行以下操作: os.syste

我目前正在编写一个python脚本,其中有一个时刻我想删除一个以.txt结尾的文件

为此,我只需在python中使用os运行命令行:

os.system("del working/*.txt")
运行python脚本时,我在cmd中遇到以下错误:

选项无效-“*”可以翻译为“无效选项”

似乎cmd无法识别通配符,但我对此知之甚少。为什么它不起作用

我知道我可以用正则表达式处理这种情况,但我想理解


提前感谢您

在Windows中,
\
是路径分隔符,而不是
/
,因此您应该执行以下操作:

os.system(r"del working\*.txt")

请注意,Windows中的
/
用于开关,因此出现“无效选项”错误。

在Windows中,
\
是路径分隔符,而不是
/
,因此您应该执行以下操作:

os.system(r"del working\*.txt")

请注意,Windows中的
/
用于开关,因此出现“无效选项”错误。

我认为最好使用os.remove,而不是带有“del”命令的os.system。使用os.system,您的脚本将无法在linux上运行。下面是使用os.remove的示例:

files = os.listdir("working\")
for fi in files:
    if fi.endswith(".json"):
        os.remove("working\{}".fomat(fi))

我认为最好使用os.remove,而不是带有“del”命令的os.system。使用os.system,您的脚本将无法在linux上运行。下面是使用os.remove的示例:

files = os.listdir("working\")
for fi in files:
    if fi.endswith(".json"):
        os.remove("working\{}".fomat(fi))

请改为使用并确保打开shell扩展(即
shell=True
)。Windows的
cmd.exe
使用
/
作为程序选项(很像在Linux或macOS系统上使用
-
-
)。它的文件系统分隔符是反斜杠:
\
。在任何情况下,炮击都不是最好的处理方法。有用于删除文件的标准库函数。使用
os.remove如何?()为什么在python中这样做是为了使其平台不可知:os.remove(f)
请改用并确保打开shell扩展(即
shell=True
)。Windows的
cmd.exe
使用
/
作为程序选项(很像在Linux或macOS系统上使用
-
-
)。它的文件系统分隔符是反斜杠:
\
。在任何情况下,炮击都不是最好的处理方法。有用于删除文件的标准库函数。使用
os.remove如何?()为什么在python中这样做是为了使其平台不可知<代码>用于glob.glob('working/*.txt')中的f:os.remove(f)