使用循环打印副本,Python

2024-06-26 13:49:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个简单的python脚本,可以打印文件夹中的pdf。我希望用户能够让脚本打印多份pdf的副本

脚本如下:

import arcpy, glob, win32api, os

pdfLoc = arcpy.GetParameterAsText(0)

# Loop through pdf directory and print from pdf
for pdfname in glob.glob(os.path.join(pdfLoc, "*.pdf")):

    fullpath = os.path.join(pdfLoc, pdfname)
    #print filename
    win32api.ShellExecute(0, "print", pdfname, None, ".", 0)


del fullpath
del pdfname
del pdfLoc

我在想一个简单的方法,比如另一个for循环来读取拷贝数,并使其循环多次(例如,如果用户想要3个拷贝,循环将读取这个并在打印循环中循环2次)

我希望这有道理。如有任何建议,我们将不胜感激。在

迈克


Tags: path用户脚本forpdfosglobprint
1条回答
网友
1楼 · 发布于 2024-06-26 13:49:39

这和你想做的很接近。此示例从可选的额外命令行参数获取副本数,然后打印每个文档的多个副本:

import sys, glob, win32api, os

pdfLoc = sys.argv[1]
try:
    copies = int(sys.argv[2])
except:
    copies = 1

for pdfname in glob.glob(os.path.join(pdfLoc, "*.pdf")):
    fullpath = os.path.join(pdfLoc, pdfname)
    for copy in range(copies):
        win32api.ShellExecute(0, "print", pdfname, None, ".", 0)

相关问题 更多 >