Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.80 KB | None | 0 0
  1. # Tu napiši svoje funkcije
  2. def lahko_sledi(b,b_nova):
  3. return b[-1] == b_nova[0] and b != b_nova
  4.  
  5. def izberi_besedo(beseda, slovar):
  6. slovar2 = []
  7. for x in slovar:
  8. if lahko_sledi(beseda, x):
  9. slovar2.append(x)
  10.  
  11. m = 0
  12. for x in slovar2:
  13. if len(x)>m:
  14. m = len(x)
  15.  
  16. slovar3 = []
  17. for x in slovar2:
  18. if len(x)==m:
  19. slovar3.append(x)
  20.  
  21. return min(slovar3)
  22.  
  23. def ni_ponavljanj(besede):
  24. seznam1 = []
  25. seznam2 =[]
  26. for i in besede:
  27. if i not in seznam1:
  28. seznam1.append(i)
  29. else:
  30. seznam2.append(i)
  31. if len(seznam2) != 0:
  32. return False
  33. else:
  34. return True
  35.  
  36. def preveri_zaporedje(besede):
  37. prejsnja_beseda = None
  38.  
  39. if ni_ponavljanj(besede) == False:
  40. return False
  41.  
  42. for ta_beseda in besede:
  43. if prejsnja_beseda != None and ta_beseda[0] != prejsnja_beseda[-1]:
  44. return False
  45. else:
  46. prejsnja_beseda = ta_beseda
  47. return True
  48.  
  49.  
  50.  
  51. import unittest
  52.  
  53.  
  54. class Obvezna(unittest.TestCase):
  55. def test_lahko_sledi(self):
  56. self.assertTrue(lahko_sledi("OMARA", "ASPARAGUS"))
  57. self.assertTrue(lahko_sledi("PETER", "REBEKA"))
  58. self.assertFalse(lahko_sledi("PETER", "ASPARAGUS"))
  59. self.assertFalse(lahko_sledi("PRETEP", "PRETEP"))
  60.  
  61. def test_izberi_besedo(self):
  62. self.assertEqual(
  63. "RAZBOJNIK", izberi_besedo("PETER",
  64. ["RAZBOJNIK", "ROPAR", "RAVBAR", "TAT",
  65. "ŽEPAR", "OTORINOLARINGOLOGIJA"]))
  66. self.assertEqual(
  67. "RAZBOJNIK", izberi_besedo("PETER",
  68. ["ROPAR", "RAVBAR", "RAZBOJNIK", "TAT",
  69. "ŽEPAR", "OTORINOLARINGOLOGIJA"]))
  70. self.assertEqual(
  71. "RAVBAR", izberi_besedo("PETER",
  72. ["ROPAR", "RAVBAR", "TAT", "ROLAND",
  73. "ŽEPAR", "OTORINOLARINGOLOGIJA"]))
  74. self.assertEqual(
  75. "RAVBAR", izberi_besedo("PETER", ["ROPAR", "ROLAND", "TAT",
  76. "OTORINOLARINGOLOGIJA", "RAVBAR",
  77. "ŽEPAR"]))
  78. self.assertEqual(
  79. "PETER", izberi_besedo("PRETEP",
  80. ["PETER", "OTORINOLARINGOLOGIJA", "PRETEP",
  81. "PERO", "MAFIJA"]))
  82.  
  83. def test_ni_ponavljanj(self):
  84. self.assertTrue(ni_ponavljanj(["PETER", "ŽOGA", "METLA", "JOŽE"]))
  85. self.assertTrue(ni_ponavljanj(["PETER"]))
  86. self.assertTrue(ni_ponavljanj([]))
  87.  
  88. self.assertFalse(ni_ponavljanj(["PETER", "PETER"]))
  89. self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "JOŽE", "JOŽE"]))
  90. self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "JOŽE", "ŽOGA"]))
  91. self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "JOŽE", "PETER"]))
  92. self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "PETER", "JOŽE"]))
  93.  
  94. def test_preveri_zaporedje(self):
  95. self.assertTrue(preveri_zaporedje(
  96. ["PETER", "RAZBOJNIK", "KLEMEN", "NEPRIDIPRAV", "VINKO",
  97. "OROŽNIK"]))
  98. self.assertTrue(preveri_zaporedje(["PETER", "RAZBOJNIK"]))
  99. self.assertTrue(preveri_zaporedje(["VINKO"]))
  100.  
  101. self.assertFalse(
  102. preveri_zaporedje(["PETER", "ZABOJNIK", "KLEMEN", "NEPRIDIPRAV"]))
  103. self.assertFalse(
  104. preveri_zaporedje(["PETER", "RAZBOJNIK", "ALEŠ", "NEPRIDIPRAV"]))
  105. self.assertFalse(
  106. preveri_zaporedje(["PETER", "RAZBOJNIK", "KLEMEN", "TAT"]))
  107. self.assertFalse(
  108. preveri_zaporedje(["PETER", "RAZBOJNIK", "KLEP", "PETER", "RIBA"]))
  109.  
  110.  
  111.  
  112. if __name__ == "__main__":
  113. unittest.main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement