fork download
  1. class Kamus:
  2. def __init__(self):
  3. self._data = {}
  4.  
  5. def tambah(self, kata, daftar_sinonim):
  6. sinonim_saat_ini = set(self._data.get(kata, []))
  7. sinonim_saat_ini.update(daftar_sinonim)
  8. self._data[kata] = list(sinonim_saat_ini)
  9.  
  10. for sinonim in daftar_sinonim:
  11. sinonim_dari_sinonim = set(self._data.get(sinonim, []))
  12. sinonim_dari_sinonim.add(kata)
  13. self._data[sinonim] = list(sinonim_dari_sinonim)
  14.  
  15. def ambilSinonim(self, kata):
  16. return self._data.get(kata, None)
  17.  
  18. # Inisialisasi objek kamus
  19. kamus = Kamus()
  20.  
  21. # Menambahkan kata dan sinonim
  22. kamus.tambah('big', ['large', 'great'])
  23. kamus.tambah('big', ['huge', 'fat'])
  24. kamus.tambah('huge', ['enormous', 'gigantic'])
  25.  
  26. # --- Pengujian ---
  27.  
  28. # Kasus 1: Mengambil sinonim dari 'big'
  29. print(f"Sinonim dari 'big': {kamus.ambilSinonim('big')}")
  30.  
  31. # Kasus 2: Mengambil sinonim dari 'huge'
  32. print(f"Sinonim dari 'huge': {kamus.ambilSinonim('huge')}")
  33.  
  34. # Kasus 3: Mengambil sinonim dari 'gigantic'
  35. print(f"Sinonim dari 'gigantic': {kamus.ambilSinonim('gigantic')}")
  36.  
  37. # Kasus 4: Mengambil sinonim dari kata yang tidak ada
  38. print(f"Sinonim dari 'colossal': {kamus.ambilSinonim('colossal')}")
Success #stdin #stdout 0.09s 14224KB
stdin
Standard input is empty
stdout
Sinonim dari 'big': ['great', 'large', 'fat', 'huge']
Sinonim dari 'huge': ['gigantic', 'big', 'enormous']
Sinonim dari 'gigantic': ['huge']
Sinonim dari 'colossal': None