对象的成员函数将返回NoneType,即使实际上返回的是-1

时间:2019-07-10 10:33:22

标签: python python-3.7

我有一个带有__parse_asup_file_for_lrepl_client_time_stats(self,start,end)

方法的类

该方法仅在两个字符串之间的一个日志文件中搜索,然后返回读取的信息。但是,如果在文件中找不到开始和结束字符串,我会返回-1(因为文件不包含必需的信息)

def __parse_asup_file_for_lrepl_client_time_stats(self,start,end):
   if(found_start and found_end):
        ...
        ...
   else: 
       _log.warning("There is no info, I am returning -1")
       return -1

我以这种方式调用该方法:

r=dd.parse_asup_file_for_replication_contexts_info() 
print ("R value is:",r)
print("Type of R is",type(r))

我的问题是执行代码时,即使我确实看到消息“没有信息,我正在返回-1”,R的值为None,类型为{{1} }

NoneType

对我来说,这显然不是没有任何回报的函数。显示消息“没有信息,我正在返回-1”,因此返回的返回值为-1

为什么r是NoneType?

1 个答案:

答案 0 :(得分:-2)

我现在知道了问题所在。

我只是从另一个成员函数内部调用成员函数。因此,r的范围对于调用成员函数而言是局部的,并且不在其外部。

新手错误,抱歉。