Python-五泣洞、學(xué)習(xí)的兩大瓶頸(通用知識)

1忧风、先自我梳理

目前掌握了列表和字典,以及while循環(huán)和for循環(huán)球凰。而且已經(jīng)做了一些練習(xí)狮腿,現(xiàn)在的問題不再是我能不能學(xué)會Python腿宰,而是我怎么學(xué)號Python?

2缘厢、學(xué)習(xí)的兩大瓶頸

知識學(xué)完就忘:學(xué)的時(shí)候記得吃度,過一會就忘了。

缺乏理解能力:明明學(xué)會了贴硫,但做題的時(shí)候就不會了椿每。

好比我們在學(xué)校上課時(shí),明明老師講的每個(gè)字都聽進(jìn)去了英遭,但鈴聲一響间护,新學(xué)的知識就從腦袋里溜走了;復(fù)習(xí)到半夜挖诸,明明胸有成竹汁尺,但看到考卷的時(shí)候卻一臉懵逼。

2.1多律、瓶頸1:知識學(xué)完就忘

在編程學(xué)習(xí)中痴突,【掌握】知識和【記住】知識是兩個(gè)概念:【掌握知識】是知道有這個(gè)知識點(diǎn),并了解它該往哪用狼荞,而【記住知識】只是強(qiáng)行記憶知識點(diǎn)辽装,但不一定知道怎么用,用在哪粘秆。

記住知識 ≠ 掌握知識

當(dāng)你使用得足夠多如迟,你就會自然形成“肌肉記憶”,對使用場景和具體用法爛熟于心攻走。

我們需要通過幾類筆記法的運(yùn)用掌握殷勘,幫助自己掌握知識點(diǎn)。

2.1.1昔搂、用法查詢筆記

【用法查詢筆記】解決的是“知識點(diǎn)是什么”的問題

記錄知識點(diǎn)的基礎(chǔ)用法玲销,是自己的學(xué)習(xí)記錄,便于自己快速查閱摘符,加深對知識的印象贤斜。

筆記格式不限,目的就是方便自己使用逛裤。

例1瘩绒,最簡單的 “算數(shù)運(yùn)算符” 相關(guān)筆記:

這張筆記是用小例子來說明不同算數(shù)運(yùn)算符的用法,并且用注釋說明了(1)代碼含義(2)實(shí)際運(yùn)行結(jié)果带族。?

例2锁荔,與“列表”相關(guān)的筆記:

記了一些對列表的常見操作

制作一份不同于課堂的案例,寫出“代碼含義”和“實(shí)際運(yùn)行結(jié)果”的注釋蝙砌,這樣才能加深對知識的第一印象阳堕,需要的時(shí)候才想得起筆記在哪跋理。

例3,與“字典”相關(guān)的筆記:

字典

逐步積累恬总,形成自己的【用法查詢筆記】:


用法查詢筆記

遇見有些課堂上老師沒有涉及到的零碎知識點(diǎn)前普,也可以補(bǔ)充到筆記里,方便日后查看壹堰。

有了這些【查詢使用筆記】拭卿,在學(xué)習(xí)新知識的時(shí)候,可以及時(shí)回顧已學(xué)知識贱纠。

在練習(xí)或?qū)嵅俚臅r(shí)候记劈,可以快速查看某個(gè)知識的具體使用細(xì)節(jié)。

建議:搞一個(gè)可以自己往里面加知識點(diǎn)并巍、并且可以快速搜索的開源技術(shù)博客之類的站點(diǎn)目木。

2.1.2、深度理解筆記

【深度理解筆記】更側(cè)重解決“為什么要用”以及“怎么用這個(gè)知識點(diǎn)”的問題懊渡。

有些知識光有印象還不夠刽射,還需要知道這些知識該如何使用。所以我們需要【深度理解筆記】來總結(jié)剃执、理解知識的使用場景誓禁。

深度理解筆記

思路是回答:

“什么時(shí)候需要用到這個(gè)知識?這個(gè)知識有什么常見用法肾档?這個(gè)知識和其他知識有什么不同摹恰?”

之類的問題,并寫下自己的思考過程怒见。

案例1俗慈,列表和字典:

列表和字典的深度理解

深度理解筆記不是一蹴而就的,它會隨著你對某一知識的理解程度的加深而不斷完善遣耍。

所以闺阱,在練習(xí)和實(shí)操的過程中,積累更多的知識舵变、運(yùn)用技巧酣溃、實(shí)操經(jīng)驗(yàn)纪隙,補(bǔ)充到深度筆記中去赊豌。

2.1.3、知識管理

如果你學(xué)Python學(xué)到“走火入魔”的話绵咱,你會發(fā)現(xiàn)【深度理解筆記】和【用法查詢筆記】本質(zhì)上就是一個(gè)“字典嵌套列表”碘饼,其中【深度理解筆記】是鍵,【用法查詢筆記】是值。

知識管理結(jié)構(gòu)

基于這個(gè)結(jié)構(gòu)由點(diǎn)到面派昧,再不斷將新知識、經(jīng)驗(yàn)循環(huán)往復(fù)的補(bǔ)充到自己的知識管理體系中去拢切。

3蒂萎、瓶頸2:缺乏解題能力

缺乏解題能力,也就是看到題目淮椰,隱隱中知道要用什么知識五慈,但就是會像便秘一樣死活卡住。

3.1主穗、如何解題

一般分為五步泻拦,即:

1、看問題:分析問題忽媒,明確結(jié)果争拐;

2、想辦法:思考需要的知識晦雨,或搜索新知識架曹;

3、找切入:思考切入點(diǎn)闹瞧;

4绑雄、試切入:切入并嘗試解決一部分問題;

5奥邮、重復(fù)直到解決問題万牺。

案例,用Python打印九九乘法表:

1洽腺、看問題:當(dāng)我們拿到這個(gè)問題時(shí)脚粟,首先思考這是什么問題呢?

要打印九九乘法表蘸朋,我們知道九九乘法表最終是什么樣子嗎珊楼?

是下述的橫著打印度液?

1 x 1 = 1厕宗,1 x 2 = 2,1 x 3=3 堕担?......

還是金字塔打右崖?

1 x 1 = 1

1 x 2 = 2霹购,2 x 2 = 4

1 x 3 = 3佑惠,2 x 3 = 6,3 x 3 = 9

......

2、想辦法:我們要用到哪些知識來解決這個(gè)問題膜楷。

首先很明顯旭咽,要打印信息就必須用到最基本的print()函數(shù)。

最取巧的辦法是像下面這樣直接寫赌厅,但顯然這么操作太原始了穷绵。

print('1 X 1 = 1')

print('1 X 2 = 2 2 X 2 = 4')

print('1 X 3 = 3 2 X 3 = 6 3 X 3 = 9')

print('1 X 4 = 4 2 X 4 = 8 3 X 4 = 12 4 X 4 = 16')......

于是我們仔細(xì)觀察,發(fā)現(xiàn)九九乘法表是有一定規(guī)律特愿,重復(fù)的結(jié)構(gòu)仲墨,所以可以想到用循環(huán)來處理。

同時(shí)揍障,我們能看到數(shù)字是在靈活變動的目养,所以用“格式化字符串”來為變動的數(shù)字預(yù)留位置會方便些。

3毒嫡、找切入:現(xiàn)在我們知道需要用的知識點(diǎn)癌蚁,但我們該先從什么地方入手來解決這個(gè)問題呢?

九九乘法表兜畸,我們會發(fā)現(xiàn)一個(gè)規(guī)律:每一行的等式里匈勋,第一位數(shù)會遞增,第二位數(shù)則會保持不變膳叨,并且在第幾行就會有多少個(gè)等式洽洁。

九九乘法表是有規(guī)律的

4、試切入:我們嘗試切入并解決一部分問題菲嘴。

我們現(xiàn)在要用到循環(huán)饿自,那么我們嘗試用兩次for循環(huán)在終端打印出:

1x2=2 2x2=4

1x3=3 2x3=6 3x3=9

如果只用循環(huán),可能代碼是這個(gè)樣子的:

fori in range(1,3):

print(str(i)+' X 2 = '+str(i*2))

for i in range(1,4):

print(str(i)+' X 3 = '+str(i*3))

你需要坐九次這樣的循環(huán)龄坪,而且要用'+'號去反復(fù)拼接數(shù)字和字符串昭雌。

那么我們可以嘗試用格式化字符串來解決這個(gè)問題,格式化字符串怎么用健田?我們前面的【用法查詢筆記】現(xiàn)在派上用場了烛卧。

知識:格式化字符串

于是,我們用循環(huán)和格式化字符串來打印九九乘法表妓局,得出下代碼:

for i in range(1,3):

? ? print('%d X %d = %d' % (i,2,i*2))

for i in range(1,4):

? ? print('%d X %d = %d' % (i,3,i*3))

我們一運(yùn)行总放,就發(fā)現(xiàn)結(jié)果長這樣:

1x2=2;

2x2=2;

... ...

這不是我們上圖中想要的結(jié)果,于是我們重復(fù)步驟1~4好爬,將需要的結(jié)果更新局雄,并開始思考新知識。

九九乘法表

于是去找百度問存炮,百度告訴我炬搭。

百多搜索問題

原來print()函數(shù)里有個(gè)參數(shù)'end'是用來控制換行行數(shù)和結(jié)尾字符蜈漓。于是我們繼續(xù)嘗試解決問題,優(yōu)化上面的基礎(chǔ)代碼:

for i in range(1,3):

? ? print('%d X %d = %d' % (i,2,i*2),end = '? ')

for i in range(1,4):

? ? print('%d X %d = %d' % (i,3,i*3),end = '? ')

一運(yùn)行宫盔,發(fā)現(xiàn)結(jié)果變成這樣了:

1 X 2 = 2 2 X 2 = 4 1 X 3 = 3 2 X 3 = 6 3 X 3 = 9

太磨人了融虽,咋辦?只能找繼續(xù)找度娘灼芭,深入理解print了有额。

于是我發(fā)現(xiàn)可以用print('')來控制換行,重新改了代碼:

for i in range(1,3):

? ? print('%d X %d = %d' % (i,2,i*2),end = '? ')

print('') #用來換行

for i in range(1,4):

? ? print('%d X %d = %d' % (i,3,i*3),end = '? ')?

print('') #用來換行

終于輸出了我想要的結(jié)果:

1 X 2 = 2 2 X 2 = 4

1 X 3 = 3? 2 X 3 = 6? 3 X 3 = 9

但是這樣寫出來的代碼同樣的結(jié)構(gòu)要重復(fù)九次姿鸿,跟搬磚差不多,我得想個(gè)法子優(yōu)化這段代碼倒源。

再回來看看九九乘法表苛预,我可以發(fā)現(xiàn)行數(shù)是固定的,范圍是range(1,10)笋熬,而列數(shù)(等式)則是逐行加一热某,即第N行就有N個(gè)等式。

于是決定使用for循環(huán)消滅重復(fù)胳螟,最終將代碼縮到4行昔馋。

for i in range(1,10):

? ? for y in range(1,i+1):

? ? ? ? print('{0}x{1}={2}'.format(y,i,i*y),end = '? ')

? ? print(' ')#用來換行

用while循環(huán)和if結(jié)構(gòu)嘗試了一下,發(fā)現(xiàn)直觀一點(diǎn)糖耸,但是代碼要多一些秘遏。

i = 1

while i <= 9:

? ? j = 1

? ? while j <= i:

? ? ? ? print('%d X %d = %d' % (j,i,i*j),end = '? ')

? ? ? ? j += 1

? ? print('')

? ? i += 1

九九表做好了,完結(jié)撒花嘉竟。

下面開始總結(jié):

總結(jié)

練習(xí)2邦危、?學(xué)習(xí)小組成績的合并排序?:

練習(xí)目標(biāo)

通過這個(gè)練習(xí),掌握列表的兩個(gè)新運(yùn)用:合并列表和列表排序舍扰。

練習(xí)要求

一次測評中倦蚪,老師將 學(xué)習(xí)小組A 和 學(xué)習(xí)小組B 的測評成績(滿分 100 分)從低到高記錄放進(jìn)兩個(gè)列表:

A=[91, 95, 97, 99],B=[92, 93, 96, 98] 边苹。

現(xiàn)在陵且,老師想將兩個(gè)小組的成績合并為一個(gè)列表,并按照從低到高的順序排序个束,你能幫老師完成嗎慕购?

思路:

列表嘛,可以用append()函數(shù)來新增列表的元素(一次一個(gè))茬底,同時(shí)可以用for循環(huán)遍歷列表里的元素脓钾。(可以考慮用經(jīng)典的冒泡排序法)就用這個(gè)知識點(diǎn),來完成列表合并和排序吧桩警。

1可训、將列表合并起來昌妹,打印檢查;(查了一堆資料握截,考慮使用列表長度來確定循環(huán)長度lenlist)

2飞崖、存到一張列表以后,使用冒泡排序法把當(dāng)前的列表從低到高排序谨胞。

3固歪、在百度以后,發(fā)現(xiàn)PYTHON直接有SORT參數(shù)胯努,一行代碼就搞定了牢裳,不用自己寫方法,表示震驚叶沛。

代碼:

list1 = [91, 95, 97, 99]?

list2 =? [92, 93, 96, 98]

for i in range(0,len(list2)):

? ? list1.append(list2[i])

list1.sort()

print(list1)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蒲讯,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子灰署,更是在濱河造成了極大的恐慌判帮,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件溉箕,死亡現(xiàn)場離奇詭異晦墙,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)肴茄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門晌畅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人寡痰,你說我怎么就攤上這事踩麦。” “怎么了氓癌?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵谓谦,是天一觀的道長。 經(jīng)常有香客問我贪婉,道長反粥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任疲迂,我火速辦了婚禮才顿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘尤蒿。我一直安慰自己郑气,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布腰池。 她就那樣靜靜地躺著尾组,像睡著了一般忙芒。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上讳侨,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天呵萨,我揣著相機(jī)與錄音,去河邊找鬼跨跨。 笑死潮峦,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的勇婴。 我是一名探鬼主播忱嘹,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼耕渴!你這毒婦竟也來了拘悦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤萨螺,失蹤者是張志新(化名)和其女友劉穎窄做,沒想到半個(gè)月后愧驱,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體慰技,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年组砚,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吻商。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,981評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡糟红,死狀恐怖艾帐,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情盆偿,我是刑警寧澤柒爸,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站事扭,受9級特大地震影響捎稚,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜求橄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一今野、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧罐农,春花似錦条霜、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蒲凶。三九已至,卻和暖如春夹厌,著一層夾襖步出監(jiān)牢的瞬間豹爹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工矛纹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留臂聋,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓或南,卻偏偏與公主長得像孩等,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子采够,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 寫在前面的話 代碼中的# > 表示的是輸出結(jié)果 輸入 使用input()函數(shù) 用法 注意input函數(shù)輸出的均是字...
    FlyingLittlePG閱讀 2,758評論 0 8
  • 在C語言中,五種基本數(shù)據(jù)類型存儲空間長度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 3,343評論 0 2
  • Python 是一種相當(dāng)高級的語言肄方,通過 Python 解釋器把符合語法的程序代碼轉(zhuǎn)換成 CPU 能夠執(zhí)行的機(jī)器碼...
    Python程序媛閱讀 1,906評論 0 3
  • 8月22日-----字符串相關(guān) 2-3 個(gè)性化消息: 將用戶的姓名存到一個(gè)變量中,并向該用戶顯示一條消息蹬癌。顯示的消...
    future_d180閱讀 973評論 0 1
  • 2.相等運(yùn)算符 3.is:同一性運(yùn)算符 #避免將is運(yùn)算符用于比較類似數(shù)值和字符串這類不可變值梗脾,由于Python內(nèi)...
    mydre閱讀 664評論 0 1