網路城邦
上一篇 回創作列表 下一篇   字體:
我對zip的認識
2022/05/04 03:24:52瀏覽383|回應0|推薦15

我們的老師是一位非常棒的老師,他年紀輕,編程經驗豐富,愛護學生,把他職場上寶貴的經驗教給我們。他經常說其他教育培訓機構的老師們,只教習作,而不是實戰,學生在課堂上可以應付老課程的考試,但無法到公司工作。

老師上課的時候,會展示給我們看很多demo(演示),然後出實際的題目做練習,通常一天八個小時的課程,他會demo, 練習十多個案例,然後會留一個非常難的習題讓我們燒腦。

跟著老師的指導,現在慢慢的進步到一個階段 – 老師給我們演示python內置的函數使用方法之後,要我們自己寫出函數的代碼, 嗯,我們可以往自己臉上貼金,大言不慚的說:“誒?這不是Python的程序員做的事嗎?” 心裡喜滋滋的暗自嘿嘿嘿。

其實不可能那麼厲害了,我們寫的都是比較簡單的內置函數,而且真的是老師手把手的教導。(手把手,就是一步一步教,然後要同學自己做,過一陣子再複習。)

老師教的demo,練習,作業都一環扣一環,一個環節沒有學會,接下來的課程,作業就找不到北了。(找不到北,意思是迷路了。)好比現在老師要我們自己寫zip函數, 老師教了步驟,也讓我們消化,也叮囑我們週末要吃透(吃透,完全理解的意思)。老師還特別說,我們當時寫的zip函數是有漏洞的,要等下一個單元的知識點學會了,才能補上。

上個星期老師說馬上要教下一個知識點,要我們再把zip函數梳理一次,然後要用新的知識點修改補足原來的漏洞。當時我沒有做複習,現在準備腦筋就卡卡的。

函數很多,通常記不住內容是什麼,好比zip函數。我必須找辦法協助自己記憶。查字典,zip是拉鏈的意思,我就想怎麼把函數內容與拉鏈聯想在一起。

Zip函數的用法如下, 假設有兩個已知函數:

列表一:[“A”, ”B”,”C”]

列表二:[1, 2, 3]

使用zip函數之後得到的列表是:

新列表一:[“A”,1]

新列表二:[“B”,2]

新列表三:[“C”,3]

第一個列表的第一個元素,和第二個列表的第一個元素合在一起,如此類推,是不是很像拉鏈的將兩邊的相對應的齒湊合在一起?這樣想,這個函數的作用就記住了。(名字取的的很傳神。)

 

老師已經教過我們,因此我們有代碼。今天看著代碼,腦筋打了很多結。老師有提示這是一個“矩陣轉置”的相關題目,然而,很不好意思的說,當初老師教“矩陣轉置”時,我是囫圇吞棗的學;在複習“矩陣轉置”的時候,也沒有完全吃透,純粹靠記憶力背下代碼。今天非常辛苦的看著老師短短幾行的代碼,掙扎著要不要翻前面的筆記。看筆記可以恢復記憶,但我不願意再一次只知其然,而不知其所以然。

因為不是真的理解,腦筋一片空白,空白,空白。再加上老師要我們寫的代碼是通用函數,意即,不知道有幾個列表,也不知道列表內有幾個元素的情況下,使用者隨意填都必須得到zip的結果。

終於啊終於,連滾帶爬吃力的在電腦上成功運行我自己寫的代碼。

明天,我還是要花時間真的吃透矩陣轉置,現在還只是二維的矩陣轉置,我對元素在行,列中循環出現的變化非常不熟悉,要想個老半天才反應。明天要做的,依照一行代碼一行代碼, 在紙上寫出變化的值,看過程的變化。否則只看結果,腦筋裡面有一大片空白,思路中斷,當機了。

( 知識學習科學百科 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=bonjour2007002&aid=173912188