Python子进程和在目录上运行脚本

2024-04-26 14:06:37 发布

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

我正在尝试运行子进程。我在一个目录上运行一个python文件(转换目录中的每个文件)。以下是我目前所得到的:

def selectFile(self):



    self.listWidget.clear() # In case there are any existing elements in the list
    directory = QtGui.QFileDialog.getExistingDirectory(self,
                                                       "Pick a folder")


    if directory:
        for file_name in os.listdir(directory):
            if file_name.endswith(".csv"):
                self.listWidget.addItem(file_name)
                print (file_name)




def convertfile(self, directory):

    subprocess.call(['python', 'Createxmlfromcsv.py', directory], shell=True)

我得到的错误是。。在

^{pr2}$

任何对初学者的帮助都是非常感谢的:)


Tags: 文件nameinself目录if进程def
2条回答

从评论到问题,这句话:

    self.convertButton.clicked.connect(self.convertfile)

将在单击按钮时将False发送到convertfile方法,这就是您看到该错误的原因。在

您需要向convertfile添加一些代码,它从列表小部件中的所选项目获取目录路径。比如:

^{pr2}$

请注意,您可能没有调用完整的目录列表中的小部件。您应该像这样向列表小部件添加项:

^{3}$

在“subprocess.call(['python','Createxmlfromcsv.py“,directory],shell=True)”,则“directory”变量不是字符串。在

相关问题 更多 >