IronPython:list.append(string)返回None / null

时间:2014-07-06 04:14:34

标签: list null append ironpython nonetype

我有一个函数从C#类的属性中获取字符串。如果该字段被标识为包含字符串列表的字段,则将其转换为带有split else的列表,它只返回一个字符串。

 def GetFieldValue(self, book, strFieldName):
     objReturn = getattr(book, strFieldName)
     if strFieldName in listFields:
         return objReturn.split(', ')
     else:
         return objReturn

我有另一个函数,用于根据字符串的类型将字符串附加到该函数的返回值

def GetAppendedValue(self, book, strFieldName, strAppend):
    objReturn = GetFieldValue(book, strFieldName)
    if strFieldName in listFields:
        return objReturn.append(strAppend)*
    else:
        return objReturn + ' ' + strAppend*

有人可以帮我弄明白为什么" * "行产生null / None值?在执行这些行

之前,结果与每种情况一样

1 个答案:

答案 0 :(得分:0)

变化:

return objReturn.append(strAppend)

使用:

objReturn.append(strAppend)
return objReturn

说明: 函数append()不会返回任何内容。

至于为什么行:

return objReturn + ' ' + strAppend

返回null,它可能没有 - 你只是在执行期间没有到达那一行。 如果您想确定,可以使用以下内容替换它:

objReturn += ' ' + strAppend
print objReturn
return objReturn