精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

為什么你總是學不會Python,入門Python的4大陷阱

開發 后端
Python以語法簡單、關鍵字少著稱,因此經常被各大媒體忽悠其是一門非常容易入門的編程語言。他的特定描述自然不言而喻,但其是否容易入門卻飽受爭議。因為每個人的基礎都不一樣。

Python以語法簡單、關鍵字少著稱,因此經常被各大媒體忽悠其是一門非常容易入門的編程語言。他的特定描述自然不言而喻,但其是否容易入門卻飽受爭議。因為每個人的基礎都不一樣。

 

[[381875]]

市面上大部分的 Python 入門書籍的目錄都非常長(畢竟缺少某個重要的知識點會被批),但是作為入門來說,真的需要所有的知識點都學習一遍嗎?

對于入門者來說,看著這些書籍目錄學習往往會遇到各種陷阱,今天我就來分享一下我的個人觀點。

語法太多了

Python 的語法規則多不多?其實非常多,如果你學習過一些古老不再更新的編程語言,對比下來你就會發現其實 Python 語法非常多。

因為 Python 需要適應現代的開發要求,他"逼不得已"需要不斷加入新的語法特性,比如像"裝飾器"、"海象運算符"等等。

此時初學者會陷入第一個陷阱——抵受不住"目錄"的誘惑,感覺自己跳過了某個知識點就會無法入門。

作為入門者我是不建議學習這些東西(短期內你大概率用不上)。

那么,到底需要學習哪些語法?

  1. 分支判斷
  2. 循環

說白了就是 if 和 for 循環。

其實,學習這些語法不是要你去記憶怎么寫,大部分時候這些語法語句不需要我們親手敲出每個字母,因為現在的 ide 都非常友好,一般都能提供生成代碼段的功能,如下是 vscode 的演示:

 

為什么你總是學不會Python,入門Python的4大陷阱

 

 

為什么你總是學不會Python,入門Python的4大陷阱

 

經常看到有人建議入門要親手輸入每段代碼,大家一定要三思,這只能提升你鍵盤打字水平

有段時間我經常需要來回切換多種編程語言,但并不考驗我的語法記憶水平,這就是代碼段的好處

小伙伴:"那其他的語法規則呢,比如運算符優先級別這些,我總是記不住怎么辦?"

其實我也從來沒有去記憶啥運算符優先級別,因為在出現多種運算符時,我總是使用括號明確他們的優先級別:

小伙伴:"這樣子看起來,好像很容易入門,if 和 for 語法真的這么容易學習?"

并不是,像 if 語法的學習重點不是怎么寫,而是怎么構造 bool 值,這就需要你進一步了解基本的數據類型(str、int、bool這些)。

幸好這些知識點的數量非常少,對于入門來說也不需要深入了解每個類型的保存機制(比如需要多少個字節)

以上這些知識點可能只是一本入門書籍中的1到3個章節的內容

序列的處理非常重要

當你基本了解 if 和 for 的使用后,下一步就要了解序列的數據結構(列表、元組)。

此時,初學者會陷入另一個坑——列表有許多方法需要記憶!

同樣地,我也不推薦入門者記憶這些方法,只需要記住最常用的1、2個操作即可。比如:

  1. 添加元素:append
  2. 移除元素:remove

同理,字符串也有許多處理方法,通常我們只需要學習少量幾個方法即可

小伙伴:"?!,就這樣子?"

事實上,后期你可能連上述2個操作都很少用上。因為在 Python 中更傾向于構造新的序列,而非對序列原地操作。

當你后期學會了推導式之后,你就會發現用得最多的語法就是 if 和 for

你可能疑惑,為什么序列的處理很重要?

不管你學習什么的編程語言,不管你是應用開發還是普通的辦公自動化學習,真正復雜的邏輯大部分來自于序列的處理。

比如一堆文件、每個文件中又會有一堆的數據。

而簡單的單個數據,往往操作也是非常直白簡單。

字典要不要在這個階段學習?我建議是可以嘗試了解,如果發現自己不能理解,那就跳過。因為后期總會有他的應用場景,那時候結合場景學習會更加輕松

學習分解問題的思維

經過上面2個階段的學習,你會發現自己充其量只能解決小學加減乘除的簡單問題,稍微復雜一點的問題你就毫無頭緒。

此時你就陷入了另一個陷阱——一邊思考邏輯一邊寫代碼

多數入門書籍都不會教你這一點,因為這不是 Python 的特性,但他極其重要。

編程的本質是把現實邏輯用代碼表達出來

而現實中,我們要完成一件比較復雜的事情時,都是先考慮整體流程,劃分出多個子流程,最后才針對每個子流程考慮細節。

我的文章少不了案例。

考慮以下的現實場景:你希望從你家里書架上(有100多本)找出某作者的書。

你可能覺得這個事情非常簡單,不就是從頭開始,每本書都看看作者名字,符合就拿出來?

這個思考過程實際就是從整體到細節的過程:

  1. 首先,你會考慮從哪里開始找,總有個搜索方向。比如從書架左上角橫向掃過每一行的書
  2. 其次,在沒有開始找之前,你就決定找出一本書后,看封面的作者名字
  3. 最后,符合條件要拿出來,與原來的書區別開來

注意上述每一點的思考都是在你開始操作之前就決定的,這就是整體到細節的考慮。

你不會隨手拿起一本書,然后才想到底怎么找作者名字?找到又要不要拿出來?這是非常反人類直覺的做法。

而 Python 初學者卻經常使用這種反人類直覺編程——寫到哪,想到哪

現在換成 Python 問題。

一個文件夾下有許多文本文件,每個文件相當于一本書,里面有書名、作者名字等信息:

 

為什么你總是學不會Python,入門Python的4大陷阱

 

下面是一個反直覺的寫法。本文最后會給出自定義函數的做法,你能明顯感受到2種寫法的思維區別。

第一步:怎么能保證取出每一個文件,沒有遺漏也不會重復取出?

經過網上搜索"python 文件夾文件",可以找到多種方式,我就隨手用其中一種:

 

  1. import os 
  2.  
  3. for file in os.listdir(r'目標文件夾路徑'): 
  4.     # file 就是每個文件的路徑 
  5.     pass 
  6.      

 

第二步:有一個文件路徑,怎么讀取里面的內容?

網上搜索"python 讀取文件",找到:

 

  1. with open('文件路徑(記得帶后綴)''r'as f: 
  2.     lines = f.readlines() 
  3.     # lines 是一個列表,每個元素就是文件中的一行內容 

 

這一步其實是第一步里面的后續操作,于是:

 

  1. import os 
  2.  
  3. for file in os.listdir(r'目標文件夾路徑'): 
  4.     # file 就是每個文件的路徑 
  5.     with open(file, 'r'as f: 
  6.         lines = f.readlines() 

 

第三步:文件中作者行內容是有"作者:"前綴,給你這一行,怎么提出里面的作者名字?

這是普通字符串操作:

 

  1. '作者:小明'.split(':')[1] 

這應該是入門必需學會的方法,當然你也可以網上搜索"python 字符串分割"

于是,現在代碼成這樣(順手把書名也取出):

 

  1. import os 
  2. for file in os.listdir(r'目標文件夾路徑'): 
  3.     with open(file, 'r'as f: 
  4.         lines = f.readlines() 
  5.          
  6.         # 第三步 
  7.         book = lines[0].split(':')[1] 
  8.         author = lines[1].split(':')[1] 

 

第四步:判斷書名是不是我們要找的,符合要取出來

這就用上 if 判斷和基本的序列操作:

 

  1. import os 
  2.  
  3. # 第四步 
  4. results = [] 
  5. target = '小明' 
  6.  
  7. for file in os.listdir(r'目標文件夾路徑'): 
  8.     with open(file, 'r'as f: 
  9.         lines = f.readlines() 
  10.         book = lines[0].split(':')[1] 
  11.         author = lines[1].split(':')[1] 
  12.          
  13.         # 第四步 
  14.         if target==author : 
  15.             results.append(book) 

現在,results 這個列表就是結果了

代碼看似簡單,但是,假如現在儲存書籍的不再是文本文件,而是一個 Excel,你能一下子知道修改哪個地方嗎?

初學者往往就在這種細節中受到挫折。明明我看懂別人寫的,但是解決自己問題時卻懵逼了

這是因為,Python 中有一個知識點能完美匹配"整體到細節"的過程!但初學者一般不怎么會用

一定要學習自定義函數

為什么編程語言基本都有自定義函數的特性?因為這符合我們解決問題的思維邏輯。

仍然解決前面的問題:

 

  1. # 第一步:從書架上取出書 
  2. def get_file_paths(folder): 
  3.     pass 
  4.  
  5. # 第二步:看封面,得知書名與作者 
  6. def get_book_message(file): 
  7.     pass 
  8.     return book,author 
  9.  
  10. # 第三步:看看是否符合 
  11. def match(author): 
  12.     return author=='小明' 

 

怎么感覺少了最后一步,"取出符合條件的書"?

看看整體調用:

 

  1. results=[] 
  2.  
  3. for file in get_file_paths(r'目標文件夾路徑'): 
  4.     book,author = get_book_message(file) 
  5.     if match(author): 
  6.         results.append(book) 

 

  • "取出符合條件的書" 的邏輯包含在整體過程中

接下來,就是逐一實現每個自定義函數就可以。解決的思路與之前反直覺一樣。

但是怎么感覺現在代碼量比之前更多了?

的確如此,但是,如果現在信息保存在 excel 中,你就能馬上知道在哪個函數修改,并且修改的負擔變少了很多

為什么?

因為函數定義帶有約束,看看上面 get_book_message 的函數定義,必需傳入一個文件路徑,必需返回元組(書名,作者)。

而整體流程和其他的每一步的函數是不管你怎么從一個文件路徑得到這個元組,過程不重要,結果最重要

怎樣進階

上面的總結(針對入門):

  1. 語法學習簡單為主(if、for)
  2. 基本序列要了解(列表、元組),但其對象操作方法不用特意記憶
  3. 學會分解問題的思維
  4. 學會自定義函數

實際上,點3才是最重要,其他點只是為他服務

因此,Python 的進階仍然是圍繞點3而展開。

比如,前面的例子中,整體流程代碼中仍然包含了 "取出符合條件的書" 的邏輯,這其實不太合理。那么此時你就學習新的語法知識點,讓你能簡化整體流程代碼。

這可能需要你學習:

  • lambda
  • 高階函數的定義(專有名詞很嚇人,實際就是能把邏輯傳遞給函數參數)

又比如:

 

  1. # 第二步:看封面,得知書名與作者 
  2. def get_book_message(file): 
  3.     pass 
  4.     return book,author 

 

這個函數只是返回書名和作者名,如果還有其他的信息,那么整體流程的代碼也很麻煩。

此時,你就需要學習面向對象的知識:比如定義類(其實用命名元組也行)

 

我認為一切按自己的實際需求出發選擇性學習是最好的,因為有使用場景學起來最輕松。

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2020-05-13 09:03:14

Python開發代碼

2025-08-27 08:22:05

2020-09-03 08:05:34

設計模式編程界

2021-12-21 06:09:05

Python切片索引

2012-06-27 10:26:19

Surface

2021-06-07 12:40:34

Python代碼陷阱

2025-10-14 09:40:48

2020-06-24 09:00:43

分庫分表MySQL

2017-01-09 12:57:21

Linux

2012-11-13 10:27:45

PythonGo編程語言

2020-09-21 10:50:24

Java多線程代碼

2021-02-27 10:38:56

Python結構數據

2024-04-01 06:21:10

2019-05-30 15:20:04

webpack前端開發

2015-12-03 10:09:31

賭場大數據

2022-05-05 19:00:22

PythonPython特性

2014-09-22 09:27:57

Python

2022-09-19 00:08:22

人工智能機器交通管制

2024-08-30 16:14:58

2018-01-29 11:11:35

Linux入門學習
點贊
收藏

51CTO技術棧公眾號

国产日韩欧美日韩| 在线精品国产欧美| 成人免费毛片网| 涩涩视频在线观看免费| 久久亚洲国产精品一区二区| 中文字幕久久久| 永久av免费在线观看| av丝袜在线| 亚洲国产精品t66y| 91原创国产| 亚洲成人av影片| 永久91嫩草亚洲精品人人| 精品国产91乱码一区二区三区 | 日本韩国精品一区二区在线观看| 亚洲春色在线视频| 蜜臀久久99精品久久久| 麻豆国产精品一区二区三区| 91国产精品91| www.色小姐com| 国产aⅴ精品一区二区三区久久| 欧美一区二区三区在线观看视频| 欧美少妇性生活视频| 在线观看三级视频| 国产精品乱码妇女bbbb| 蜜桃91精品入口| 国产高清在线观看视频| 日本免费在线视频不卡一不卡二| 欧美劲爆第一页| 91n在线视频| 九九在线精品| 亚洲国产精品yw在线观看| 国产aⅴ爽av久久久久| 成人福利av| 午夜精品成人在线视频| 免费看污污视频| 在线观看免费网站黄| 久久先锋影音av鲁色资源网| julia一区二区中文久久94| 在线免费一级片| 日韩高清一区二区| 日韩av电影手机在线| 日本一区二区三区四区五区| 中文字幕免费一区二区| 日韩中文字幕网址| 国产又粗又猛又爽又黄的视频四季 | 岛国最新视频免费在线观看| 99久久精品免费| 成人av免费在线看| 国产后入清纯学生妹| 精品一区二区在线看| 国产精品永久免费| 国产又粗又大又黄| 日本少妇一区二区| 国产精品免费电影| 中文字幕在线观看免费| 奇米影视一区二区三区| 国产精品视频播放| 中文字幕91爱爱| 久久精品久久久精品美女| 国产精品27p| 无码一区二区三区在线观看| 天堂影院一区二区| 国产精品美女午夜av| 日韩乱码一区二区三区| 日韩1区2区日韩1区2区| 国产精品自拍视频| 国产精品怡红院| 国产麻豆日韩欧美久久| 亚洲综合中文字幕在线| av免费在线不卡| 国产99久久久久| 国产精品裸体一区二区三区| 天天干天天摸天天操| 91麻豆免费在线观看| 日本一区二区精品| av在线之家电影网站| 国产精品视频看| 欧美a级黄色大片| 国产盗摄一区二区| 日韩欧美国产成人| 国产精品区在线| 三级欧美日韩| 日韩激情在线视频| 国产精品理论在线| 欧美精品播放| 欧美在线性爱视频| 亚洲天堂视频在线播放| 国产一区二区三区不卡在线观看| 都市激情久久久久久久久久久| 天天综合网在线| 日本一区二区视频在线| 欧美一级特黄aaaaaa在线看片| 55av亚洲| 欧美日本在线一区| 人妻av一区二区| 欧美日中文字幕| 欧美激情第三页| 国产精品成人久久久| 国产精品一区二区三区网站| 久久99精品久久久久久久青青日本| 第三区美女视频在线| 亚洲激情六月丁香| 欧美激情成人网| 欧美影院在线| 国产亚洲视频在线| 国产精品成人免费一区二区视频| 日产国产高清一区二区三区| 99九九视频| lutube成人福利在线观看| 香蕉久久一区二区不卡无毒影院| 另类小说第一页| 精品女人视频| 欧美老肥婆性猛交视频| 999视频在线| 成人激情视频网站| 制服诱惑一区| 超碰国产一区| 亚洲激情视频网站| 天天干中文字幕| 日本中文字幕一区二区视频| 国产精品乱子乱xxxx| 黄色在线免费网站| 欧美亚洲综合一区| 国产艳俗歌舞表演hd| 中文字幕免费精品| 国产在线观看一区二区三区| 国产资源在线看| 欧美日韩精品在线视频| 国产一精品一aⅴ一免费| 91日韩视频| 国产精品影院在线观看| 成人jjav| 91国产丝袜在线播放| 无码人妻aⅴ一区二区三区| 欧美午夜免费影院| 亚洲中国色老太| 麻豆视频网站在线观看| 欧美性感一类影片在线播放| 老鸭窝一区二区| 一本久道久久久| 国产午夜精品一区| av老司机免费在线| 精品久久久久久久久久久久久久久久久| 国产精品情侣呻吟对白视频| 久久一本综合频道| 日本一区二区在线视频| 欧美大片高清| 国产一区二区黑人欧美xxxx| 91在线视频免费播放| 久久亚洲精华国产精华液| 看av免费毛片手机播放| 窝窝社区一区二区| 日本免费在线精品| 国产三级视频在线| 欧美亚洲一区三区| 少妇高潮惨叫久久久久| 久久成人久久鬼色| 亚洲一区二区三区在线观看视频| 精品久久福利| 久久精品国产欧美激情| 国产精品一区二区免费视频| 亚洲欧美日韩国产中文在线| 日韩成人av免费| 欧美成人高清| 国内精品久久国产| jk漫画禁漫成人入口| 国产亚洲精品美女久久久| 最近日韩免费视频| 亚洲日本va在线观看| 精品人妻一区二区三区免费| 韩国久久久久| 免费看污久久久| 精品123区| 久久精品国产69国产精品亚洲| 国产高清在线免费| 欧美日韩国产精品专区| 久久国产柳州莫菁门| 久久电影网电视剧免费观看| 欧美国产日韩激情| 精品一区二区三区的国产在线观看| 国产精品一区二区三区在线播放| 亚洲大胆人体大胆做受1| 亚洲国产精品电影| 日韩熟女一区二区| 亚洲日穴在线视频| 无码一区二区精品| 精品一区二区三区免费| 欧美午夜小视频| 国产精品手机在线播放 | 亚洲图片小说视频| 亚洲在线观看免费视频| 91成人破解版| 国产美女娇喘av呻吟久久| 免费毛片小视频| 亚洲91视频| 欧美一区二区三区电影在线观看 | 欧美精品久久久久久久久老牛影院| 九九久久免费视频| 国产欧美日本一区视频| 久草免费资源站| 日韩电影在线观看一区| 菠萝蜜视频在线观看入口| 精品欧美久久| 狠狠色综合欧美激情| 成人日韩视频| 国产精品嫩草视频| 一区二区乱码| 久久久久成人网| 久久久久久国产精品免费无遮挡| 日韩精品影音先锋| 亚洲一区二区三区网站| 欧美日韩精品在线视频| 欧美日韩免费一区二区| 欧美国产日韩在线观看| ass精品国模裸体欣赏pics| 国产麻豆日韩欧美久久| 91亚洲精品久久久蜜桃借种| 久久久久久穴| 欧美啪啪免费视频| 国产专区一区| 超碰97在线看| 日韩在线中文| 新呦u视频一区二区| 美女毛片一区二区三区四区| 产国精品偷在线| 电影一区二区三区久久免费观看| 日韩av成人在线| 周于希免费高清在线观看 | 亚洲欧洲一区二区在线观看| 日韩三区视频| 精品国产第一页| 51精品国产| 超碰在线97av| 香蕉成人app| 亚洲一区亚洲二区| 亚洲a成人v| 国产精品嫩草视频| 成人午夜sm精品久久久久久久| 欧美制服第一页| 色是在线视频| 日本亚洲精品在线观看| 在线观看欧美日韩电影| 91av在线精品| 韩国主播福利视频一区二区三区| 奇米成人av国产一区二区三区| 不卡av免费观看| 97精品一区二区视频在线观看| www在线看| 欧美一区二区影院| 欧美大片免费| 国产精品黄色av| 久久精品超碰| 91久久久久久久久久久| 精品国产亚洲一区二区在线观看 | 国产av无码专区亚洲av| 日韩三级.com| 内射后入在线观看一区| 国产视频欧美视频| 国产一区精品| 中日韩美女免费视频网址在线观看 | 猫咪成人在线观看| 麻豆成人av| 国产一区网站| 综合视频在线观看| 国产一区观看| 国产1区2区在线| 麻豆91在线播放| 久久久无码人妻精品无码| 不卡区在线中文字幕| 国产特黄级aaaaa片免| 欧美激情中文字幕一区二区| 紧身裙女教师波多野结衣| 亚洲成人动漫一区| 69视频免费看| 欧美大片免费久久精品三p| 天堂成人在线视频| 伊人av综合网| 91麻豆免费在线视频| 韩日欧美一区二区| 久久69成人| 国产精品12| 成人免费看片39| 人人妻人人澡人人爽欧美一区| 午夜在线精品| 午夜一区二区视频| 99这里都是精品| 国产精品18在线| 午夜在线电影亚洲一区| 中文字幕一区二区三区人妻四季| 日韩欧美国产三级电影视频| 青青草免费观看免费视频在线| 最近中文字幕2019免费| av手机免费在线观看| 国产精自产拍久久久久久| 97一区二区国产好的精华液| 日韩欧美一区二区三区四区| 国产精品s色| 黄色免费网址大全| 成人av中文字幕| 国产一区二区三区视频播放| 欧美日韩精品在线观看| 99热这里只有精品3| 亚洲免费视频在线观看| 调教一区二区| 成人h片在线播放免费网站| 日韩av系列| www.一区二区.com| 另类调教123区| 蜜桃av免费看| 亚洲18色成人| a视频免费在线观看| 亚洲香蕉成视频在线观看 | 岛国av一区二区三区| 国产普通话bbwbbwbbw| 国产一区二区久久精品| 96av在线| 成人在线观看网址| 国产精品黑丝在线播放| 爆乳熟妇一区二区三区霸乳| 99久久精品国产导航| 亚洲色婷婷一区二区三区| 欧美性三三影院| 欧美高清成人| 性色av一区二区三区免费| 日本少妇精品亚洲第一区| 亚洲国产一区二区三区在线| 亚洲欧美日韩国产一区二区| 日本护士做爰视频| 亚洲国产另类精品专区| 亚洲国产精品视频在线| 久久精品中文字幕一区| 色噜噜成人av在线| 亚洲精品乱码久久久久久蜜桃91 | 欧美在线不卡一区| 日本不卡视频一区二区| 97视频在线观看成人| 久久大胆人体视频| www插插插无码免费视频网站| 国产麻豆91精品| 91视频免费在线看| 日韩欧美一卡二卡| 麻豆av在线免费观看| 亚洲一区二区中文字幕| 欧美日韩国产精品一区二区亚洲| 伊人成人免费视频| 一区二区三区色| 欧美特级特黄aaaaaa在线看| 国模吧一区二区三区| 精品欧美午夜寂寞影院| 欧美网站免费观看| 久久久久久影视| 国产亚洲欧美日韩高清| 自拍视频国产精品| 日本a人精品| 黄色一级片av| 99综合电影在线视频| 免费污污视频在线观看| 在线视频国产日韩| www.成人在线.com| 日韩欧美猛交xxxxx无码| 99免费精品在线| 色老头一区二区| 久久精品中文字幕| 国产精品一线| 精品久久久久久久免费人妻| 国产精品传媒视频| 亚洲成a人片在线| 69av成年福利视频| 日本大胆欧美| ass极品水嫩小美女ass| 欧美日韩国产影院| 免费在线视频欧美| 国产精品三区四区| 日本成人在线视频网站| 午夜国产福利一区二区| 亚洲成年网站在线观看| 久久久一本精品| 91免费版看片| 久久伊人中文字幕| 国产精品乱码久久久| 久久人人97超碰精品888| 国产欧美日韩精品一区二区免费 | a在线观看视频| 国产91精品高潮白浆喷水| 成人免费看片39| youjizz.com日本| 日本精品免费观看高清观看| 日本免费在线视频| 九色视频成人porny| 美女在线视频一区| 国产一卡二卡在线| 在线亚洲午夜片av大片| 福利片一区二区| 午夜两性免费视频| 欧美日韩国产激情| 日本www在线观看| 久久亚洲国产精品日日av夜夜| 精一区二区三区| www.久久久久久久| 97在线观看免费高清|