Chinese, Traditional subtitles

← 04-05 Add To Index Solution

dummy description

Get Embed Code
5 Languages

Showing Revision 4 created 08/01/2014 by Fran Ontanaya.

  1. 有很多不同的方法可以定義 add-to-index
  2. 這是其中一種
  3. 我們將建立一個程序,稱為 add-to-index
  4. 需要三個輸入:index、keyword、和 url
  5. 在 add-to-index,首先確認這個關鍵字是否已經出現過
  6. 那麼,我們需要對 index 的所有項目進行瀏覽
  7. 最自然的做法是使用 for loop
  8. 我們定義程序 add-to-index
  9. 需要三個輸入,index、keyword、和 url
  10. 為了幫忙追蹤進行的過程
  11. 我先畫下 index 的資料結構作為提醒
  12. 請記得這是一個項目列表
  13. 每個項目本身也是一個列表
  14. 第一部分是 keyword,第二部分是 url 列表
  15. 這是我們的資料結構
  16. 這會幫助我們了解如何定義 add-to-index
  17. 我們需要做的第一件事
  18. 是檢查 keyword 是否存在於 index 中
  19. 如果找到 keyword,
    我們要修改項目,而不是建一個新的項目
  20. 最自然的做法是使用 for loop
  21. 我們會走遍 index 的每個元素
  22. 在程序塊裡,我把它們稱為 entry
  23. 這就是 entry
  24. 第一次經過 loop,entry 指向這個列表
  25. 這是 index 列表的第一個元素
  26. 現在需要找出 keyword
  27. keyword 就在這裡,entry 位置 0 的元素
  28. 我們會對 entry 位置 0 的值做測試
  29. 是否與傳入的 keyword 吻合
  30. 使用 '==' 比較式來測試
  31. 如果相等,那麼我們找到了符合的 keyword
  32. 也就是說,我們要將 url 加到 url 列表中,
    與這個 entry 相關聯的 url 列表
  33. 為了得到 url 列表
  34. 要找到 entry[1],就是 entry 位置 1 的值
  35. 我們要加入新的 url
  36. 這裡,我們找到一個 entry 與我們尋找的 keyword 相符
  37. 這意謂著 keyword 已經在 index 裡了
  38. 我們加入新的 url 到與該關鍵字相關的 url 列表裡
  39. 我們完成了,沒有其他的事要做
  40. 要確認的是,我們停下來不再做其他的事
  41. 一種方法是使用 break,它可以終止 loop
  42. 所以我們要結束整個程序
  43. 寫了 break,仍然得面對如何處理
  44. 沒找到 keyword 的問題
  45. 我們走到 return
  46. 已經完成 add-to-index ,也將 url 加到它應該的位置
  47. 現在則要思考
  48. 在keyword 不存於 index 的情況下,該怎麼做?
  49. 在這情形下,我們走到 loop 的末尾,沒有找到任何項目
  50. 如果走到 loop 的末尾
  51. 就意謂著,我們在 index
    沒有找到任何符合 keyword 的項目
  52. 那麼,我們要加入新的 entry
  53. 這個新的 entry,它的值是一個列表
  54. 包含兩個元素,有 keyword
  55. 作為第二個元素
  56. 有包含 url 的列表,這些 url 包含這個關鍵字
  57. 目前我們只有 1 個,傳入了 add-to-index 的 url
  58. 該如何處理呢?
  59. 在 add-to-index 加入新元素,我們使用 append
  60. 我們需要傳入某個值到 append ,
    我們要加入的資料結構
  61. 這整個就是我們要加入的內容
  62. 這是一個列表,包含了 keyword 作為第一個元素
  63. 第二個元素是包含了單個 url 的列表
  64. 在 index 沒有找到 keyword 的情況下
  65. 這是我們要加入的內容