gpt4 book ai didi

python - 在许多文件上从 Windows 命令提示符运行 python

转载 作者:可可西里 更新时间:2023-11-01 10:00:31 24 4
gpt4 key购买 nike

这是一个愚蠢的问题,我知道这是个愚蠢的问题,但出于某种原因,我找不到任何有关从 Windows 命令提示符运行 python 的有用教程,所以我不得不问问你们。我有一个脚本需要在一个目录中以 FY*.txt 或 WS*.txt 开头的所有文件上运行。我试过通过命令提示符进入目录并执行

for file in FY*.txt; do python my_script.py

这只是告诉我此时"file"是意外的。我也试过

python my_script.py FY1.txt FY2.txt FY3.txt

import sys
inputfilenames=sys.argv[1:27]

for name in inputfilenames:
datafile=open(name,'r')

作为我在 python 脚本本身中打开文件的方式。这似乎只在一个文件上运行脚本,而不是所有文件。

我为我的无知道歉,我真的不知道如何使用命令提示符来运行 python 东西。除了答案,如果有人有任何教程建议,我将非常非常感谢。

最佳答案

我不太确定初始示例应该是什么,但要从标准 Windows 命令提示符执行此操作,您可以使用如下内容:

for %G in (FY*.txt); do python my_script.py %G

如果你做这样的事情,你的代码中需要像下面这样的东西:

with open(sys.argv[1], 'r') as f:
do_something_with(f)

或者,您可以考虑使用 fileinput模块获取第二个示例中的文件列表并处理它们。也就是说,在你的脚本中你会有类似的东西:

for line in fileinput.input():
do_something_with(line)

或者您可以将通配符表达式作为参数并使用 glob模块,所以你可以运行:

python my_script.py FY*.txt

然后在您的脚本中执行如下操作:

for file in glob.glob(sys.argv[1]):
with open(file, 'r') as f:
do_something_to(f)

glob 可以在多个参数上运行:

for files in([glob.glob(arg) for arg in sys.argv[1:]]):
for file in files:
with open(file, 'r') as f:
do_something_to(f)

这将允许您执行:

python my_script FY*.txt WS*.txt

关于python - 在许多文件上从 Windows 命令提示符运行 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11887475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com