Python從入門到轉行

2021-09-14 03:59:05 字數 3795 閱讀 5620

題記:大二的時候發現人生苦短,所以信了拍神,開始學python。學了大半年之後成功轉行做前端了。來寫個教程幫助大家入門python。

零基礎入門就得從最基本的變數,語法格式,資料型別,函式,作用域,模組等基本知識入手(有程式設計基礎基礎也得這麼來)
和籃球一樣,先來三步上籃:

學寫一些基本的python程式,上述《簡明 python 教程》後邊的示例可以做。想更進一步掌握基礎,可以做一點leetcode easy題目練練手。(看個人情況唄,反正我是沒那個耐心,做題實在太枯燥,雖然寫題是很有好處的)

做一些感興趣的小專案,這裡有python習題100例,很基礎。覺得不夠高大上可以玩實驗樓裡的專案,實驗樓是個不錯的**,可以做一些很好玩的東西。

以上三步可以讓你21天精通python喲

tips:推薦乙個神器,python執行視覺化,可以一步步檢視程式執行狀態,變數狀態,函式呼叫,記憶體分配,對於理解變數生命週期,作用域,除錯理解程式非常有幫助。

開發工具:推薦pycharm,有免費社群版,也可用edu郵箱註冊專業版。

高階就是專注於python的某個領域做深入研究了,python主要包含了ai領域(nlp,深度學習,影象處理啥的,反正無所不能),web開發(後端服務,爬蟲),資料處理(資料分析,科學計算),工具(比如讀寫excel,編寫自動化指令碼),桌面開發(gui工具)等等。

python好強大啊,我又想寫python了。

下面簡單寫寫我知道的領域的入門:

web開發

python web框架眾多,是建**的利器。對於建立不太複雜的cms系統(比如新聞**,部落格**),django強到沒朋友,開發效率無敵。對於注重靈活性的**,flask可以作為首選,靈活而小巧,非常優雅的框架。

django入門先看官方文件,了解基本概念。然後開始做實際專案,比如django開發部落格系統教程

flask入門看官方文件,同django。

爬蟲(網路資料獲取)

先科普,網路爬蟲,可以理解為在網路上爬行的一直蜘蛛,網際網路就比作一張大網,而爬蟲便是在這張網上爬來爬去的蜘蛛,如果它遇到資源,那麼它就會抓取下來。比如它在抓取乙個網頁,在這個網中他發現了一條道路,其實就是指向網頁的超連結,那麼它就可以爬到另一張網上來獲取資料。簡單地說,利用程式從網頁上獲取你想要的資料。

python的爬蟲框架非常多,也非常好用。

入門步驟:

理解網頁是怎麼構成的

網頁的基本知識包括:

基本的html語言知識

理解**的發包和收包的概念(post get)

稍微一點點的js知識,用於理解動態網頁

解析網頁,這裡需要學習正規表示式

選取乙個爬蟲框架,比如自帶的urllib,request,bs4等等

看官方文件,如何使用框架,然後就可以養乙隻爬蟲咯。

教程點這裡

資料處理

上邊爬蟲講到如何獲取資料,這裡將學習如何分析處理資料,教程鏈結。

科學計算,資料處理用到比較多的是matlab,無所不能的python當然也可以替代它。

numpy pandas是科**算當中最為重要的兩個模組。matplotlib 是乙個非常強大的 python 資料視覺化工具,繪製各種圖形。

看官網文件,理解這個庫的基本用法。

學習一些簡單的專案,上文提到的實驗樓也可以用

ai領域

略從別處引用一點基本介紹

theano 是一種用於使用數列來定義和評估數學表達的 python 庫。它可以讓 python 中深度學習演算法的編寫更為簡單。

keras 是類似 torch 的乙個精簡的,高度模組化的神經網路庫。theano 在底層幫助其優化 cpu 和 gpu 執行中的張量操作。

pylearn2 是乙個引用大量如隨機梯度(stochastic gradient)這樣的模型和訓練演算法的庫。它在深度學習中被廣泛採用,這個庫也是以 theano 為基礎的。

lasagne 是乙個輕量級的庫,它可以在 theano 中建立和訓練神經網路。它簡單、透明、模組化、實用、專一而克制。

blocks 是一種幫助你在 theano 之上建立神經網路模型的框架。

caffe 是一種以表達清晰、高速和模組化為理念建立起來的深度學習框架。它是由伯克利視覺和學習中心(bvlc)和網上社群貢獻者共同開發的。谷歌的 deepdream 人工智慧影象處理程式正是建立在 caffe 框架之上。這個框架是乙個 bsd 許可的帶有 python 介面的 c++庫。

genism 是乙個部署在 python 程式語言中的深度學習工具包,用於通過高效的演算法處理大型文字集。

cxxnet 是一種快速,簡明的分布式深度學習框架,它以 mshadow 為基礎。它是輕量級可擴充套件的 c++/cuda 神經網路工具包,同時擁有友好的 python/matlab 介面,可供機器學習的訓練和**使用。

這裡包含的東西太多了,基本學習方法如上。

附錄:先來看看python有多強大,不然不能被它所吸引,就學不下去了。

20行**實現人臉檢測與識別:

face_recognition可以通過python或者命令列即可實現人臉識別的功能。使用dlib深度學習人臉識別技術構建,在戶外臉部檢測資料庫基準(labeled faces in the wild)上的準確率為99.38%。

# 匯入識別庫

import face_recognition

# 載入已有的作為影象庫

# 編碼載入的

obama_face_encoding = face_recognition.face_encodings(known_obama_image)[0]

biden_face_encoding = face_recognition.face_encodings(known_biden_image)[0]

known_encodings = [

obama_face_encoding,

biden_face_encoding

]# 載入要識別的並編碼

# 計算該與已有的差別值

face_distances = face_recognition.face_distance(known_encodings, image_to_test_encoding)

# 自行設定同一張面孔的分界值,輸出比對結果

for i, face_distance in enumerate(face_distances):

print("the test image has a distance of from known image #{}".format(face_distance, i))

print("- with a normal cutoff of 0.6, would the test image match the known image? {}".format(face_distance < 0.6))

print("- with a very strict cutoff of 0.5, would the test image match the known image? {}".format(face_distance < 0.5))

print()

python 從入門到放棄

本人所有關於python的內容均為學習期間的整理的筆記,希望可以給學習者帶來些許幫助!不過一入it深似海!準備入行者請做好充分的心理準備!計算機的知識跟新迭代速度很快,不學習就會被淘汰!如果你打算入行然後找乙份安穩的工作安度餘生,那麼我還是建議去考公務員吧!這個行業可能並不適合你!有不少的人可能都覺...

Python從入門到斷氣

01 計算機基礎之程式設計 02 計算機組成原理 03 計算機作業系統 04 程式語言分類 05 python和python直譯器 06 執行python程式的兩種方式 07 python整合開發環境 08 變數 09 記憶體管理 10 定義變數的三個特徵 11 python資料型別 12 數字型別...

python從入門到實踐

1.類,例項化是根據類來建立物件 類的實踐 建立乙個人類 class humans 3.7版本不加括號 def init self,name,height 血的教訓init前後兩條下劃線,self不是類的關鍵字 self.name name self.self.height height def l...