Anzahl der Es in einem String Methode 1

   1 meinstring = raw_input("Satz eingeben: ")
   2 print "Anzahl der E's: %s" % meinstring.lower().count("e")

Methode 2

   1 meinstring = raw_input("Satz eingeben: ")
   2 print "Anzahl der E's: %s" % len(meinstring) - len(meinstring.lower().replace('e', ''))

Methode 3

   1 meinstring = raw_input("Satz eingeben: ")
   2 counter = 0
   3 for char in meinstring:
   4     if char.lower() == 'e':
   5         counter += 1
   6 print "Anzahl der E's: %s" % counter

Methode 4

   1 meinstring = raw_input("Satz eingeben: ")
   2 print "Anzahl der E's: %s" % [c == "e" for c in meinstring.lower()].count(True)

Methode 5

   1 meinstring = raw_input("Satz eingeben: ")
   2 print "Anzahl der E's: %s" % sum([c == "e" for c in meinstring.lower()])

Methode 6

   1 # -*- coding: utf-8 -*-
   2 
   3 from threading import Thread
   4 from md5 import md5
   5 import time
   6 
   7 class InputThread(Thread):
   8 
   9     def __init__(self):
  10         Thread.__init__(self)
  11         self.status = 0
  12 
  13     def abort(self):
  14         self.status = -1
  15 
  16     def run(self):
  17         line = raw_input('Satz eingeben: ')
  18         checksum = md5(line).hexdigest()
  19         t_checker.set_env(line, checksum)
  20         while t_checker.is_busy():
  21             time.sleep(1)
  22             if self.status != 0:
  23                 break
  24 
  25         if self.status == -1:
  26             t_checker.abort()
  27             raise RuntimeError, 'Checksum doesn\'t match'
  28         else:
  29             result = t_checker.get_result()
  30             print 'Anzahl der E\'s: %s' % result
  31 
  32 
  33 class CheckerThread(Thread):
  34 
  35     def __init__(self):
  36         Thread.__init__(self)
  37         self.string = None
  38         self.checksum = None
  39         self.busy = True
  40         self.running = True
  41 
  42     def set_env(self, string, checksum):
  43         self.string = string
  44         self.checksum = checksum
  45 
  46     def is_busy(self):
  47         return self.busy
  48 
  49     def get_result(self):
  50         if self.result is None:
  51             raise RuntimeError, 'Ergebnis wurde nicht berechnet'
  52         return self.result
  53 
  54     def abort(self):
  55         self.running = False
  56 
  57     def calc(self):
  58         result = 0
  59         for char in self.string:
  60             if ord(char) in [69, 101]:
  61                 result += 1
  62         return result
  63 
  64     def run(self):
  65         while self.string is None:
  66             if not self.running:
  67                 return
  68             time.sleep(1)
  69         if self.checksum == md5(self.string).hexdigest():
  70             self.result = self.calc()
  71             self.busy = False
  72         else:
  73             t_input.abort()
  74 
  75 
  76 t_input = InputThread()
  77 t_checker = CheckerThread()
  78 
  79 if __name__ == '__main__':
  80     t_input.start()
  81     t_checker.start()

Tags: Codesnippets | Tipps | String | Humor

Anzahl der Es in einem String (zuletzt geändert am 2009-06-17 16:14:27 durch anonym)