[Tutor] remove function

Luke Paireepinart rabidpoobear at gmail.com
Thu Jul 27 05:43:21 CEST 2006


Christopher Spears wrote:
> Here is a class called PriorityQueue:
>
> class PriorityQueue:
> 	def __init__(self):
> 		self.items = []
> 		
> 	def isEmpty(self):
> 		return self.items == []
> 		
> 	def insert(self, item):
> 		self.items.append(item)
> 		
> 	def remove(self):
> 		maxi = 0
> 		for i in range(1, len(self.items)):
> 			if self.items[i] > self.items[maxi]:
> 				maxi = i
> 		item = self.items[maxi]
>  
> 		return item
> 		
> My question concerns the remove function.  The
> function returns the maximum value.  However, I'm
> curious about
> self.items[maxi:maxi+1] = [].  I understand that the
> programmer wants to remove self.items[maxi].  Why
> would he or she want to remove that value and the one
> next to it (maxi+1)?  Or am I misunderstanding 	
> self.items[maxi:maxi+1] = [] ?
>   
I don't see the line 'self.items[maxi:maxi+1] = []' anywhere in the 
above code.
In fact, I don't see any list slicing taking place at all.

> As an aside, I can't figure out how to respond to
> topics on this list.
>  
>   
either hit 'reply-all' in your message or change the 'to:'
line from whatever the recipient's address is to 'tutor at python.org'
(you can also cc. to 'tutor at python.org' but this is what will
happen when you 'reply-all' anyway.)
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
>   



More information about the Tutor mailing list