python - 初学者 : python subprocess. 调用数百个参数

标签 python

免责声明:我是 python 初学者,但有 Drupal 编程经验。

我有这个:

f = ['/path/1.jpg', '/path/2.jpg', '/path/3.jpg'] #less than 1500 files

我需要这样做

call(['c:/program files/ABBYY FineReader 10/finereader.exe'] + f)

但是,参数限制 (http://stackoverflow.com/questions/2381241/what-is-the-subprocess-popen-max-length-of-the-args-parameter) 为 32K 个字符,因此我需要先删除/path。我该如何继续,让 .exe 找到文件?

谢谢!

最佳答案

您应该将 cwd='/path/' 添加到您的 subprocess.call 的参数中。这会将可执行文件的工作目录更改为 '/path/'(但请注意,它不用于搜索可执行文件,因此仍然提供您的绝对路径)。

然后,假设它们都在同一路径中,您可以使用:

import os
f = [os.path.basename(x) for x in f]

关于python - 初学者 : python subprocess. 调用数百个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9747408/

相关文章:

python - 机器人在行为过程中没有反应

jQuery html(text) 通过ajax 解析

python - 二维数据的 Keras 内置 MSE 损失返回二维矩阵,而不是标量损失

Python 正则表达式不匹配所有预期的单词

python - 按列将两个 Pandas 系列附加到数据框

python - 在 VS Code python 终端中运行 python 时遇到问题

python - 如何从YouTube数据API v3检索大量数据(5000多个视频)?

python - Bokeh 字形被屏幕边缘切断

python - 在逗号分隔的行中转置数据

python - 单击 PyQt 表项时更改属性