發表文章

期末專題

Dear all, 時間很快已經到了第六週最後一個單元了,希望大家收穫滿滿。 最後一週沒有 OJ 程式題,但有一個專案,相信大家在看完第六週的內容後,一定有能力可以完成一個開源資料的分析。 在第一期(2019秋天)中,共有五十幾人完成期末專題並取得最後的證書,專題的內容也包羅萬象,十分的多樣,很期待大家的專題。 請注意截止日期是在  5/20/2020 ,繳交的方法我有放在專題那一章節,大家要去看。 Good luck!! Go Go Go!! Teacher 薛 2020/4/30

單元五:函式

圖片
第五週的函式難度又更增強了,特別是最後的程式練習,很高興還是很多同學闖關成功了!從問卷上來看有15 為同學完成,實際可能更高。 最後的四個應用不知道大家是否有去執行?記得講義中有範例程式碼,如果自行嘗試沒有辦法成功,可以「偷看」一下,然後再自行嘗試,反覆幾次,相信你一定可以成功。 Quiz in video 錯比較多的是 Exception 那一個章節,可能是因為填充題大家不習慣吧,或是比較少接觸錯誤處理的機制。但這其實很重要,對於程式的品質。 Self-test keyword 這一題錯得最多,我想許多同學可能第一次接觸這種觀念: 大家可以再回去看一下影片,還有講義中的程式碼: def prime2(n, start=2): "print the prime numbers between start and n" if start < 2: start = 2 for x in range(start, n+1): for d in range (2, x): if x % d == 0: break # x is not prime else: # x is prime print (x, end=' ') prime2(10) prime2(10, 5) prime2(10, start=5) # 呼叫時,指定 keyword prime2(start=5) # incorrect prime2(start=5, 10) # incorrect 本週即將進入最後一個單元-- PANDAS 資料分析,也是期末專題的「前哨戰」,看完這個單元,大家在做期末專題絕對沒有問題,期待大家的期末專題!!加油!! Teacher 薛

Py2020春- 單元四 集合物件 4/5

圖片
因為疫情的關係,全世界的學校多半停課了,台灣是少數還有在實體上課的,想想真是不容易,感恩。 這個假期大家都待在家嗎?也可以體驗一下線上上課。其實最重要的是 持之以恆 ,每天花一點時間學習,感覺一定很好。如果還是太忙沒時間看,給大家幾個建議: 把課程的連接存起來,可以快速打開 。我都是存在 google chrome 的書籤中,一點擊就可以馬上進去課程看。雖然從 OpenEdu 進去一步步慢慢找到課程也不會花太多時間,但畢竟不方便。 影片快速播放 。影片右下角都很方便調整播放速度(比在 Youtube 方便),最快可以到兩倍速,方便你快速瀏覽教材。當然,在不懂的地方還是要停下來降速觀看。 善用字幕跳轉影片 。OpenEdu 這套系統可以有兩種模式看字幕,一個是字幕在右邊,一個是在下面。在右邊時你可以快速滑動觀看整個字幕,並且點擊該字幕,影片就會跳轉到該位置,是不是很方便呢? 善用文字教材 。除了影片教材以外,每一單元的第一小節我們都會放上教材連接,點擊後就會到 google doc 的教材,裡面有文字解說及程式碼。copy-paste-run 這些程式碼後,再慢慢的理解裡面的內容也是一種做法。 當然,只是觀看沒有做練習對於程式學習是 完全沒有功效   的,我們希望大家要完成裡面的測驗及程式作業。 Quiz in Video Q1 錯的人不少,許多人還點選了修改,因為 Set 本身並沒有索引,所以直接的修改是不行的。 Self-Test 自我測驗方面,這一題錯的也不少。當我們宣告 {} 時,Python 會把他預設為 dict 的型態,而不是 set。 dict 這一題是有點難度的,要知道 family.keys() 回傳的是一個物件的型態(可以用 type() 檢驗一下),必須要用 list 轉換後再取他的值。 星際探索 這個系列的答對率通常蠻高的,約九成七,本單元稍微下降至九成六。 OJ 程式練習 練習題有兩小題,目前答對的比例分別是 12%與13%偏低,我想是有難度的吧。我們每一單元都會公布前一單元的參考程式碼,所以大家可以多試幾次,下週看答案時一定可以有所獲。 防疫期間,Coding 最好 本週開始,進行函式的內容,你將會更懂下面的意義: def StayAtH

Py2020春- 單元三 邏輯控制 3/28

圖片
第三單元來到邏輯控制,難度明顯的提升,從 OJ 的程式實作中,可以看到沒有成功的比例提升了。 但覺得挑戰成功的人也不在少數,我覺得這樣很棒!寫程式就是要有這樣的感覺! 第三單元的 Quiz in Video 答對率還是在九成以上,較低的是 break 和 continue 的那幾題。break 會中斷迴圈的執行直接跳出整個迴圈,continue 則是忽略該次迴圈剩餘的程式碼直接到下一次。 for break else 3.4 自我測驗第三題 Q3 是最多人錯誤的地方(答對率只有62%),一樣是 break 的語法,但他是用在 for break else 上: 若都沒有進入 break 則會進入 else 中,這個觀念可能第一次接觸會比較難懂一些。許多同學都選了:else 應該與 if 對齊,應該是沒有注意到 for break else 的語法。 內縮 Q2 錯誤的人也不少,許多同學忽略了內縮的重要性:第四行 print 應該內縮到和第三行的 print 一樣的位置,才不會造成語法錯誤。 ps. 單元四 OJ 最後一題,題目設定時有點出錯,感謝同學的反饋,目前已經修正。

Py2020春- 單元三 3/16

圖片
進入第三單元,相信大家明顯感覺難度提升了。希望大家持續加油! 1. 註冊人數增加為 651 人 這個星期增加了73 位學員參與,目前共 651人。其中  227 位積極參與者。所謂的積極參與者表示過去一周內曾經看過影片或做過題目或參與討論的人數。 2. Quiz in video 與自我測驗都的正確率保持在九成以上。 3.4 Q3 這一題錯誤的最多,大概是複選題的關係,許多學員沒有完全選對,可以再仔細的執行檢查看看。 3. 有點難,但很有趣 從課程回饋中看得出第三章的確有點難度了。其實學習程式語言難易並不是最大的障礙,覺不覺得有趣往往才是關鍵!願意去嘗試,從中獲得樂趣才是程式學習之道。 **** Py2020Spring:  https://www.openedu.tw/course.jsp?id=855

Py2020春- 單元二 3/8

圖片
很快的第四週已結束,即將進入第三單元,稍微統計一下課程狀況。 1. 註冊人數增加為 565 人 這個星期增加了57 位學員參與,目前共 565人。其中 106 位積極參與者。 2. Quiz in video 與自我測驗都的正確率保持在九成以上。 3. OJ 程式練習最常遇到的問題 大家對於 OJ 自動程式批閱還是有些誤解。討論區有許多同學發問為什麼自己的程式總是錯(很高興也有同學解釋)。多半是在結果算出來後,輸出多加了一些字,造成與標準答案比對時不同。請大家注意觀看題目要求的輸出(及範例), 不要有多餘的輸入提示字和輸出提示字 。 也可以看一下之前介紹的影片 4. 修課者多為大學以下學生,上班族也不少 不同族群一起修課,相互學習。 下週起第三單元 邏輯運算開始,難度提升,當然也會比較有趣。希望大家繼續加油。 **** Py2020Spring:  https://www.openedu.tw/course.jsp?id=855

Py2020春- 單元二 3/1

圖片
3/1, 課程的第二單元已經過了一週,稍微統計一下課程狀況。 1. 註冊人數增加為 498 人 這個星期增加了115 位學員參與,目前共 498人。其中 106 位積極參與者。 2. Quiz in video 的正確率保持在九成以上。 題目都不難,可以馬上檢驗一下剛剛學的。 3. 最常出錯的一題 這一題是大家最常出錯的,大家可能對格式化的輸出還不習慣。 0:8s 0表示第一個參數; s 表示字串。 1:6.2f f表示有小數的數字,.2 表示小數點有 2 位。3 個位數 + 一個 . + 2 個小位數 等於 6。 4. 程式題答對偏低 到目前為止,單元二的程式題答對的人數在 30-60 之間,而且平均大約繳交 4-5 次才會答對該題,可見得大家對於真正撰寫程式還不熟,或是對於 OJ 的操作不熟。這裡先提供第一題的答案,讓大家參考: diameter = float(input('')) r = diameter/2 area = round(r*r*3.14, 2) print (area) p = round(diameter*3.14, 2) print (p) 再次提醒大家,input('') 的地方不要寫提示字,系統會誤判為那是你輸出的一部分。 5. 大部分學員想取得證書 有 65% 的學員想取得證書(樣本:176位) ---- 單元二還有一週的時間,目前課程積極參與的人數約 106 人,希望大家繼續加油! Py2020Spring:  https://www.openedu.tw/course.jsp?id=855