1.    def deleteNode(self, data):
2.           current = self.head
3.           pre = None
4.           found = False
5.           while current and found is False:
6.               if current.getInfo() == data:
7.                   found = True
8.               else:
9.                   pre = current
10.                  current = current.getNext()
11.          if found:
12.               if current == self.head: #first node deleted
13.                   self.head = current.next
14.                   del current 
15.               else:
16.                   pre.next = current.next
17.                   current.next = None
18.                   del current #current = None
19.                self.size -= 1
20.           return found