YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Chinese, Traditional subtitles

← Defining init - Programming Foundations with Python

Get Embed Code
7 Languages

Showing Revision 6 created 03/31/2018 by Bernice0419.

  1. 那麼,在這裡,我回到程式碼中,
  2. 然後我看見我的movie類別, 接著在裡面
  3. 我會開始定義這個名為init的函數。
  4. 現在,這個函數有一個特別令人好奇的地方
  5. 就是,在 init單字的兩邊都有兩條底線
  6. 這些底線是
  7. Python告訴我們程式設計師的方式, 就是,嘿 !
  8. 這個名字init ,基本上是預先保留在Python中的,
  9. 所以這是一個特殊的函數或是方法。
  10. init這個方法有什麼特殊的呢?是這樣的, 它會初始化或是在記憶體中
  11. 建立一塊空間,來記住像標題故事情節,
  12. 之類的細節,用於我們將要建立的
  13. 新的movies實例。現在 init 接收一些
  14. 訊息或者參數。其中第一個
  15. 參數是python 關鍵字self 。
  16. 現在這個被呼叫的self 是什麼呢?好吧,
  17. 你可以把 self 認為是它自己或者被建立的實例。
  18. 所以,當我們在其他 Python 文件執行這行代碼時,
  19. 順便一提,只是為了提醒你
  20. 這裡我們想要建立一個新的電影叫 toy_story。
  21. 然後當我們執行這行程式碼時,我們知道
  22. 在Movie類別中函數 __init__ 會被呼叫。
  23. 而Self參數,在這個例子中指向toy_story 。現在,我需要
  24. 坦白一件事,我記得多年前在大學時當我第一次學習
  25. 物件導向程式設計,這個 self 的概念
  26. 對我來說十分的難理解。
  27. 如果你也是這樣,現在別太擔心,
  28. 它會在我們學習這個整個程式碼後,
  29. 一會兒後變得清晰起來
  30. 總之,讓我們加上這個關鍵字self 到我們的
  31. 新字彙列表中。好的,我將回到movie類別,
  32. 並接著定義 init函數。
  33. 現在,我們想用 init 來初始化,如標題、 故事情節之類的訊息和
  34. 其他我們想要在類別中記下的。有一種能做到的方法是,我
  35. 會呼叫self.title 接著呼叫self.storyline。
  36. 下一個呼叫 poster_image_url,
  37. 最終是呼叫 trailer_youtube_url 。現在,我們必須初始化這些變數,
  38. 與 init 接收的參數。
  39. 接著尤其是它將接收四個參數。
  40. 第一個是電影標題,
  41. 下一個是電影故事情節,
  42. 接著電影的海報
  43. 最後,是在 Youtube 上的預告。所以在這裡,一旦我
  44. 接收到這四個訊息並當作為參數給__init__ 函數,
  45. 我就可以初始化我的Movie變數。
  46. 這裡是怎麼做的。 self.title, 是電影標題
  47. Self.storyline 是電影故事情節。 下一個是
  48. 海報圖。接著最後,在youtube 上的預告。
  49. 現在,我承認,
  50. 我們已經寫了很多
  51. 看上去新奇古怪的程式碼。 好吧, 我要說
  52. 的一件事是,
  53. 我們應該都休息一下,並深呼吸
  54. 現在,我想讓你做的是
  55. 暫停這個影片, 接著在你的電腦上寫下
  56. 這個程式碼, 一旦我們執行這個程式的程式碼
  57. 這一切會變得有道理起來。現在, 有一個關鍵點
  58. 我想標記起來。在我執行這個程式碼前,
  59. 就是,如果我打開我的另一個 Python 文件
  60. entertainment_center.py ,並執行這個程式碼。
  61. 它會拋出一個錯誤。這個錯誤會發生,
  62. 因為當我們嘗試建立電影、 玩具總動員時,
  63. init 函數被呼叫,
  64. 它現在在尋找多個參數或者訊息,
  65. 儘管我們不發送任何的訊息,
  66. 所以讓我改變一下,現在,我知道
  67. __init__ function函數的第一個參數是self,
  68. 它是預先定義在Python裡的。所以我會跳過它。
  69. 下一個是電影標題,我知道的是
  70. 玩具總動員,那麼我會加入它,之後是電影
  71. 故事情節 ,所以我會輸入,
  72. 一個男孩和他活過來的玩具的故事
  73. 下一個是形像圖片, 我也會把它加入
  74. 我已經在維基百科上找到一個,玩具總動員的海報
  75. 的連結,把它加入,最後 Youtube 預告,我也加上了
  76. 好了。現在,讓我將頁面滾動回去
  77. 使我們可以看到程式碼的開始
  78. 這裡,我認為你不能看到所有的程式碼,
  79. 那麼我會將程式碼和有用到的圖片檔案,
  80. 放在導師筆記中,
  81. 方便你看。好的
  82. 我要做的最後一件事是
  83. 輸入玩具總動員的故事情節。讓我儲存這個文件
  84. 接著回到我的Movie類別的文件。接著儲存, 然後
  85. 再回來到我的 entertainment_center.py 文件,
  86. 現在,如果一切順利的話,我的程式應該
  87. 輸出 toy_story.storyline 。讓我們執行一下。
  88. 接著看,玩具總動員故事情節輸出了。
  89. 好的,那麼,在下一個影片我們將看看,
  90. 當我們執行這個程式碼時,
  91. 在螢幕後面(後端)發生了什麼。