Python Soundex模块中的功能不存在’;行不通

Python Soundex模块中的功能不存在’;行不通,python,spss,Python,Spss,这是我正在运行的soundex模块中处理SPSS数据的函数之一。几年前,它曾经工作过,但现在它为每种情况生成“错误计算案例”。有人知道为什么会发生这种情况吗 def spssoundex(newvariablename,computingvariable): import spss varnames = [] varcount = spss.GetVariableCount() for i in xrange(varcount): varnames.append(spss.GetVar

这是我正在运行的soundex模块中处理SPSS数据的函数之一。几年前,它曾经工作过,但现在它为每种情况生成“错误计算案例”。有人知道为什么会发生这种情况吗

def spssoundex(newvariablename,computingvariable):

import spss
varnames = []
varcount = spss.GetVariableCount()
for i in xrange(varcount):
    varnames.append(spss.GetVariableName(i))
varindex = varnames.index(computingvariable)
cursor = spss.Cursor(accessType = 'w')
cursor.SetVarNameAndType([newvariablename],[4])
cursor.CommitDictionary()
for i in range(cursor.GetCaseCount()):
    indcursor = cursor.fetchone()
    try:
        cursor.SetValueChar(newvariablename,get_soundex(indcursor[varindex]))
        cursor.CommitCase()
    except:
        print "Error Computing Case"
        try:
            print casecursor[varnames.index("CASE")]
        except:
            print "CASE variable not in file"
cursor.close

extendedTransforms.py模块有一个soundex函数,该函数易于与SPSSINC TRANS一起使用。它还有其他可能更好的措施。ExtendedTransforms与最新版本的统计信息一起安装,也可以从社区站点获得。(这款iPad的小型e-drat)


但是跟踪真正的错误异常可能很有用。

取出
try
except
块,看看您实际遇到了什么错误。您正在捕获所有异常,这是一种糟糕的做法,因为它掩盖了意外错误。修改
except
以仅捕获实际要处理的异常。您可能只需使用
SPSSINC TRANS
函数,而不用将光标移动到。