Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. import re
  2.  
  3. class Msg():
  4. def __init__(self, firstline, message):
  5. self.day = firstline.split(" ")[0].strip()
  6. self.ID = firstline.split(" ")[1].strip()
  7. self.message = message
  8. def getFoxNumbers(self):
  9. result = re.search('^\d+\/\d+()+',self.message)
  10. if result != None:
  11. return map(int, result.group().split("/"))
  12. else:
  13. return False
  14.  
  15. def szame(szo):
  16. valasz = True
  17. for i in range (0,len(str(szo))):
  18. if (str(szo[i])<"0") or (str(szo[i])>"9"): valasz = False
  19. return valasz
  20.  
  21. file1 = open("veetel.txt","r")
  22. file_list = file1.readlines()
  23. file1.close()
  24. messages = [Msg(file_list[x],file_list[x+1]) for x in range(0, len(file_list), 2)]
  25. print("2. feladat: \n Az elso adat rogzitoje: %s. \n Az utolso adat rogzitoje: %s." % (messages[0].ID,messages[-1].ID))
  26. fox = [[target.day, target.ID] for target in messages if re.match(".+farkas.+",target.message) != None]
  27. print("3. feladat: \n" , ".ID rogzitette; ".join(".napon ".join([item[0], item[1]]) for item in fox), "rogzitette a 'farkas' szot.")
  28. statistics = [str(len([item for item in messages if int(item.day) == x ])) for x in range(1,12)]
  29. print("4. feladat:")
  30. for i,day in enumerate(statistics): print (" A(z) %d napon %s adat erkezett" % (i+1, day))
  31. file2 = open("adaas.txt","w")
  32. for day in range(1,12):
  33. daily = [message for message in messages if int(message.day) == day]
  34. restored = list(daily[0].message)
  35. for char in range(0,90):
  36. restored[char] = [daily_message.message[char] for daily_message in daily if daily_message.message[char] != "#"][0]
  37. print("".join(restored),file=file2)
  38. file2.close()
  39. u_day = input("7. feladat:\n Add meg a nap sorszamat: ")
  40. u_ID = input(" Add meg a radioamator sorszamat: ")
  41. u_message = [message for message in messages if (message.day == u_day) and (message.ID == u_ID)]
  42. if len(u_message) != 0:
  43. out = str(sum(u_message[0].getFoxNumbers())) if u_message[0].getFoxNumbers() != False else "Nincs informacio"
  44. else:
  45. out = "Nincs ilyen feljegyzes"
  46. print(" Az eszlelt farkasok szama: %s" %(out))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement