我试图用Python删除一些SPSS多响应集。
以下内容保存在SPSS语法中,只要我在“中有集合的名称,它就可以工作。”列表.txt“文件(在语法目录中):begin program.
import spss, spssaux, SpssClient, os, sys
SpssClient.StartClient()
working_directory_path = os.path.dirname(SpssClient.GetDesignatedSyntaxDoc().GetDocumentPath())
SpssClient.StopClient()
def delete_function(dir_path, filename):
path_file = str(dir_path) + "\\" + filename
print path_file
with open(path_file) as f:
result = ["$" + x.replace('\n',"") for x in f.readlines()]
names = [x for x in spss.GetMultiResponseSetNames()]
for i in result:
if i in names:
spss.Submit('MRSETS /DELETE NAME=[{}].'.format(unicode(i, "utf-8")))
print(spss.GetMultiResponseSetNames())
delete_function(working_directory_path, 'list.txt')
end program.
但是当我把函数移到语法之外(在一个单独的函数.py“文件),我做不到。
有什么想法吗?在