[Day15] 模組(module)使用與設計


請先在 Accupass 活動通報名,並參考課程兌換教學完成課程兌換。


問題討論區
加入問題討論
作業任務區
提交作業任務


SHUKAIYANG Dec 27, 2019

老師好,想請教在 main.py 內定義一個 main() 函式,然後再呼叫 main() 的用意是? 謝謝。
例如以下課程範例:


def main():
    print_my_module_1()
    print_my_module_2()

main()
chuangwenyang Dec 27, 2019

我想是因為上面老師的範例是先在同一個資料夾中兩個不同的.py檔案中建立print_my_module_1 及print_my_module_2 兩個不同的function。然後在主要執行的檔案執行。為了方便吧,所以把兩個function寫在一個新的function下面,然後執行新的function (main()),這樣就可以一次跑兩個function 了

happycoder Dec 28, 2019

對的,一般會在主程式中有個 main function 當作執行入口。感謝 chuangwenyang 分享~

若要簡化也可以這樣寫:

from my_package.my_module_1 import print_my_module_1
from my_package.my_module_2 import print_my_module_2

print_my_module_1()
print_my_module_2()

然後把主要函式命名為 def main 只是習慣(你不要叫 main function 要自己隨便叫什麼名字都可以,然後使用時呼叫它),然後 repl.it 預設的主要程式就叫 main.py 同學才會感覺怎麼那麼多 main。

SHUKAIYANG Dec 29, 2019

謝謝老師及chuangwenyang解惑。


chuangwenyang Dec 27, 2019

老師您好,我想請問一下在最後一個隨堂練習中回傳的內容的意義是甚麼呢?

happycoder Dec 28, 2019

您好~

您的問題很好~就是指印出網路請求回傳內容,requests 套件可以讓我們發出 http 網路請求。這邊是使用 GET 請求(還有 POST 請求是用來送出表單的),其實就像是我們使用瀏覽器送出 https://www.google.com ,回傳內容就是網頁內容,而我們的瀏覽器會把回傳網頁內容渲染成我們所見到的網頁),只是這邊我們是使用程式去送出網路請求~

這部份我們接下來會再更進一步說明~

chuangwenyang Dec 29, 2019

謝謝老師的回答~