这么大的问题,我想不通。也许我的 Python 知识太少了。
问题是,在此函数顺利运行一次后,另一次我在另一个函数中出错。
函数,之后事情会中断:
def setFixedPriority( self, priority, lister ):
step = priority / lister . __len__ ( )
for j in range( 0, lister . __len__( ) ):
for i in range( 0, self . listOfJobs . __len__ ( ) ) :
if self . listOfJobs[ i ] . category == lister[ j ]:
self . listOfJobs[ i ] . priority += priority
elif self . listOfJobs[ i ] . jobType == lister[ j ]:
self . listOfJobs[ i ] . priority += priority
elif self . listOfJobs[ i ] . timeToDo == lister[ j ]:
self . listOfJobs[ i ] . priority += priority
priority -= step
self . sortByPriority( )
出现问题的函数:
def sortByPriority( self ) :
tmp = range ( 1, self . listOfJobs . __len__ ( ) + 1 )
for i in reversed ( tmp ) :
for j in range ( 1, i ) :
if self . listOfJobs [ j - 1 ] . priority < self . listOfJobs [ j ] . priority :
self . listOfJobs [ j - 1 ],
self . listOfJobs [ j ] = self . listOfJobst [ j ],
self . listOfJobs [ j - 1 ]
调用函数(来自不同的 python 脚本/文件/类):
self . jobs . setFixedPriority( int( self . settings[ 'Spinbox1' ] ), self . settings[ 'type' ] . split( ":" ) )
我得到的错误是:
File "data/ToDoListClass.py", line 82, in sortByPriority
self . listOfJobs [ j ] = self . listOfJobst [ j ],
AttributeError: jobList instance has no attribute 'listOfJobst'
我知道 sortByPriority 工作正常,因为我在 setFixedPriority 之前调用过一次,它不会给我错误。
什么可能导致这种情况发生?