Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Tu napiši svoje funkcije
- def lahko_sledi(b,b_nova):
- return b[-1] == b_nova[0] and b != b_nova
- def izberi_besedo(beseda, slovar):
- slovar2 = []
- for x in slovar:
- if lahko_sledi(beseda, x):
- slovar2.append(x)
- m = 0
- for x in slovar2:
- if len(x)>m:
- m = len(x)
- slovar3 = []
- for x in slovar2:
- if len(x)==m:
- slovar3.append(x)
- return min(slovar3)
- def ni_ponavljanj(besede):
- seznam1 = []
- seznam2 =[]
- for i in besede:
- if i not in seznam1:
- seznam1.append(i)
- else:
- seznam2.append(i)
- if len(seznam2) != 0:
- return False
- else:
- return True
- def preveri_zaporedje(besede):
- prejsnja_beseda = None
- if ni_ponavljanj(besede) == False:
- return False
- for ta_beseda in besede:
- if prejsnja_beseda != None and ta_beseda[0] != prejsnja_beseda[-1]:
- return False
- else:
- prejsnja_beseda = ta_beseda
- return True
- import unittest
- class Obvezna(unittest.TestCase):
- def test_lahko_sledi(self):
- self.assertTrue(lahko_sledi("OMARA", "ASPARAGUS"))
- self.assertTrue(lahko_sledi("PETER", "REBEKA"))
- self.assertFalse(lahko_sledi("PETER", "ASPARAGUS"))
- self.assertFalse(lahko_sledi("PRETEP", "PRETEP"))
- def test_izberi_besedo(self):
- self.assertEqual(
- "RAZBOJNIK", izberi_besedo("PETER",
- ["RAZBOJNIK", "ROPAR", "RAVBAR", "TAT",
- "ŽEPAR", "OTORINOLARINGOLOGIJA"]))
- self.assertEqual(
- "RAZBOJNIK", izberi_besedo("PETER",
- ["ROPAR", "RAVBAR", "RAZBOJNIK", "TAT",
- "ŽEPAR", "OTORINOLARINGOLOGIJA"]))
- self.assertEqual(
- "RAVBAR", izberi_besedo("PETER",
- ["ROPAR", "RAVBAR", "TAT", "ROLAND",
- "ŽEPAR", "OTORINOLARINGOLOGIJA"]))
- self.assertEqual(
- "RAVBAR", izberi_besedo("PETER", ["ROPAR", "ROLAND", "TAT",
- "OTORINOLARINGOLOGIJA", "RAVBAR",
- "ŽEPAR"]))
- self.assertEqual(
- "PETER", izberi_besedo("PRETEP",
- ["PETER", "OTORINOLARINGOLOGIJA", "PRETEP",
- "PERO", "MAFIJA"]))
- def test_ni_ponavljanj(self):
- self.assertTrue(ni_ponavljanj(["PETER", "ŽOGA", "METLA", "JOŽE"]))
- self.assertTrue(ni_ponavljanj(["PETER"]))
- self.assertTrue(ni_ponavljanj([]))
- self.assertFalse(ni_ponavljanj(["PETER", "PETER"]))
- self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "JOŽE", "JOŽE"]))
- self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "JOŽE", "ŽOGA"]))
- self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "JOŽE", "PETER"]))
- self.assertFalse(ni_ponavljanj(["PETER", "ŽOGA", "PETER", "JOŽE"]))
- def test_preveri_zaporedje(self):
- self.assertTrue(preveri_zaporedje(
- ["PETER", "RAZBOJNIK", "KLEMEN", "NEPRIDIPRAV", "VINKO",
- "OROŽNIK"]))
- self.assertTrue(preveri_zaporedje(["PETER", "RAZBOJNIK"]))
- self.assertTrue(preveri_zaporedje(["VINKO"]))
- self.assertFalse(
- preveri_zaporedje(["PETER", "ZABOJNIK", "KLEMEN", "NEPRIDIPRAV"]))
- self.assertFalse(
- preveri_zaporedje(["PETER", "RAZBOJNIK", "ALEŠ", "NEPRIDIPRAV"]))
- self.assertFalse(
- preveri_zaporedje(["PETER", "RAZBOJNIK", "KLEMEN", "TAT"]))
- self.assertFalse(
- preveri_zaporedje(["PETER", "RAZBOJNIK", "KLEP", "PETER", "RIBA"]))
- if __name__ == "__main__":
- unittest.main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement