Python Class / NoneType

时间:2015-03-19 14:42:56

标签: python jython nonetype

我有以下python函数:

def run(value, args):
    offset = args[0]
    return offset.asInt()

如果我返回type(offset),我会获得一个ClassName org.python.core.PyInteger。这个类有像asInt()getValue(),...这样的方法(它是一个Jython类)但每次调用一个方法时,都会出错:

NoneType object has no attribute ....

完整错误消息:

javax.script.ScriptException: AttributeError: "NoneType" object has no attribute "asInt" in script.py at line number 3

1 个答案:

答案 0 :(得分:0)

我写了一个简单的程序,在下面将类类型显示为'str'(字符串类):

readFile = open("PATHtoFile", 'r')
data = readFile.read()
print(type(data))
<class 'str'>

因为将文件保持打开是不好的做法我将使用close方法关闭,执行以下操作:

data = readFile.close()
print(data)
None
print(type(data))
<class 'NoneType'>

注意,类类型现在是'NoneType',因为因为我使用close方法,所以可以读取变量数据中的任何内容?