首先是基本語法的學習,這方面可以下載《簡明Python教程》學習,也可以到廖雪峰的官方網站學習。
然后,找個感興趣的方向深入研究相關的庫的使用。
Web開發方面,可以學習一下Flask和Django數據可視化方面,可以學習一下numpy、matplotlib圖形界面開發方面,可以學習一下Tk、GTK+、PyQt等結論:“更快”說不上,咱們談談“更好”。
0 - 前言編程學習不是急于求成,畢其功于一役的活兒,用力過猛,反倒走火入魔。
1 - 大神們學習的訣竅我們選用python作為生產工具,先要知曉這門語言所遵從的一些淺顯的道理準則。
Tim Peters簡潔地將 BDFL 的 Python 設計指導原則歸納為20句格言,其中只有19句寫了下來。在終端上,使用python進入交互模式,然后使用 import this。就可以看到了。
網上一份中文翻譯:
先要對python的設計理念和編程指導有個認識。
下面總結了對于初學者的11條小技巧。
1 - 堅持每天敲代碼
無論多寡,都要寫一寫,熟能生巧。哪怕是代碼片段也可以。
2 - 有思路記下來
對于全職開發者,有思路要記下來,然后抽時間用代碼實現。
3 - 使用python命令行交互
直接在命令行輸入python,就可以開寫了,這很方便。在交互頁面,可以率先測試一些功能代碼。或者先測試,能行,再固化到程序內。
4 - 有張有弛
學習的時候,專注一段時間,然后休息幾分鐘,讓大腦放空。接著再沉浸式學習。
5 - 成為bug獵手
寫程序的能力很重要,可以會調試程序,快速定位bug,用非常之手段重現bug,更是一門高深莫測的手藝。
6 - 主動尋找學習的氛圍
獨自編程,閉門造車,遇到困難后會逐漸澆滅學習的熱情。如果是一群都在學習的同學,這樣的氛圍會對大家相互提高。
7 - 學會把知識教給他人
如何檢驗自己是否學會了,一個簡單的辦法,就是你把這個知識給別人教一教。講的流暢,沒有什么問題,說明你是真的掌握了。
8 - 結對編程
大一些的項目,需要多個人相互合作。我們需要隊友相互補充編程能力的不足。你搞不定的,隊友搞的定。
9 - 學會提問
學習的大多數時候,都是在搜索引擎中度過的。掌握搜索方法,掌握提問的技巧,勝過千軍萬馬。
10 - 有余暇,寫點感興趣的項目
代碼熟練到一定程度,有興趣的在業余時間維護一些個人的代碼庫或項目。
11 - 回饋開源社區
我們從社區中汲取營養,能力上來后,是時候反哺社區了!
2 - python語言你必知必會的資源這一段推薦一些優秀的項目資源。
我們知道python能做的事情非常的多,積累了這么多年的庫,各行各業都有許多優秀的內容,如果鉆研進去,在某一領域,極有可能走到前排去。
1 - github awesome-python
有趣的python項目,在github上倉庫地址 https://github.com/vinta/awesome-python,中文版的倉庫地址
https://github.com/jobbole/awesome-python-cn
。2 - 免費的服務器 pythonanywhere
官網地址
https://www.pythonanywhere.com/
,是英國的一家公司維護的,對全世界免費開放。支持 Django,flask,ternado等框架,還有數據庫可用,對于個人學習python web編程,并實踐框架,絕對比在本地自己折騰服務好用。關鍵是程序部署之后,完全在外網可用了!3 - 微軟官網的python學習教程
特別要表揚微軟這幾年在開源做的貢獻,一個是VS Code不遺余力的推廣,還有就是對python下沉到各個層次學習,官網的教程人性化,且有多語言支持,英文不好的同學,切換到中文即可。
3 - 上窮碧落下黃泉,動手動腳翻東西俗話說“磨刀不誤砍柴工”。好的工具讓我們事半功倍。下面推薦幾個優秀的工具。
1 - 科學計算,唯Anaconda馬首是瞻
這個整合好的開發環境,省去開發者在開始干活之前,一大堆的環境,包,工具的安裝配置,一個anaconda搞定。如果你覺得anaconda太大而全,可以使用精簡版 anaconda mini。
2 - IDE必備之pyCharm
JetBrain出品的IDE在各個語言領域都是一枝獨秀的,python的編輯器是pycharm。對于php的phpstorm,javascript的webstorm,java的idea,都是熟悉的配方,熟悉的味道。
3 - 隨寫隨用筆記本 Jupyter Notebook
Jupyter Notebook是基于網頁的用于交互計算的應用程序??杀粦糜谌^程計算:開發、文檔編寫、運行代碼和展示結果。
4 - 結語讀者根據自己的學習情況,努力尋找適合自己的工具和方法吧。
happy coding~~
我是@程序員小助手,持續分享編程與程序員成長相關的內容,歡迎關注~~python的書很多 , 但是好書不多, 經過我這么多年的python學習,我總結出了一個python學習的讀書路線: python簡明教程: 讓你大體上了解一下python, 最好是能夠獨立完成最后一個練習項目之后再看別 的書; python學習手冊, python基礎教程,python核心編程, 這三本書都是講基礎的, 但是都有不足又相互補充 , 我建議你隨便挑一本開始看, 當看到某個地方有些不明白的時候, 去看看另外兩本書里對應的章節, 有的時候你會恍然大悟的; 下面就看你的想法了, 如果想去學web開發, 其實這時候就可以去學django了, 可以去看在線版的the django book; 如果覺得自己基礎還不足的話, 可以看看python cookbook, python標準庫實例, 還有python網絡編程都挺好的, 如果想做gui開發的話也有很多方向, 推薦pyqt 看完這些書, 你的知識儲備絕對沒有問題了, 下來就看你自己的想法了, python是一個強大而簡潔的語言, 只有想不到, 沒有做不到~~~ 最后, 祝學習愉快~~
看了我這一條你也就不用花錢,也不用在網上找其他資料學習了。
python可以說對沒有編程基礎的人特別友好了。自學選python是特別明智的。但學了python到正式工作,肯定是不夠用的,所以最后還是要學java,但會python后,學java就簡單很多了。
c需要敲100行代碼,java只需要50行,python就只需要20行,但就是因為20行,所以并沒有java那么穩定。
ython學習路線圖—流程篇:Python 培訓后職業發展路徑Python 學習路線圖入門視頻我推薦b站上的,因為太基礎,所以會比較長,并且一開始介紹了一些原理,對于新手很友好。主要我每次看彈幕就會覺得這個說話老師傻屌又可愛,哈哈。
當然百度云資源也是有的,就在基礎的第一個資源里。
先說一下每個階段該學的東西。
Python基礎解決的現實問題:
能夠熟練使用Python技術完成針對小問題的程序編寫。
掌握的核心能力:
1. 掌握Python基礎語法, 具備基礎的編程能力;
2. 建立起編程思維以及面向對象程序設計思想。
要點:
變量、標識符和關鍵字、輸入和輸出、數據類型轉換、條件控制語句和循環語句、容器類型、函數、文件操作、面向對象、異常處理、模塊和包。
相應資源
Python入門教程完整版(懂中文就能學會)
python入門必備指南
Web基礎開發解決的現實問題:
能夠使用面向對象的程序設計方法, 基于Linux操作系統開發多任務的網絡程序開發。
掌握的核心能力:
1、能夠熟練使用Linux操作系統;
2、掌握網絡編程相關技術,能夠實現網絡間數據通信;
3、掌握程序設計開發中多任務實現方式;
4、能夠熟練掌握MySQL操作相關技術,熟練編寫各種數據庫操作SQL語句,并能夠進行Python與MySQL之間的數據交互;
5、掌握Python中的re模塊的使用,能夠實現對字符串進行復雜模式匹配;
6、掌握Web服務器的工作流程,以及Web框架的實現原理。
要點:
Linux命令、網絡編程、多任務編程、正則表達式、html與css、JavaScript、jQuery、數據庫編程、Python語法進階、靜態Web服務器、mini-Web框架。
相應資源
Linux基礎命令教程豪華版.chm
linux從入門到精通
服務器開發之linux基礎編程
服務器開發之linux系統編程
服務器開發之linux網絡編程
Web-Django框架解決的現實問題:
更上一級能夠開發主流Web網站,并掌握常見的技術要點;根據實際問題設計出相應數據庫表。
掌握的核心能力:
1、掌握Python Web主流框架-Django的使用;
2、可根據Web框架設計,開發對應的數據庫;
3、可根據業務流程圖,開發Web網站的前后臺業務。
要點:
Django框架、前后端分離模式、VUE進階-組件式開發、Django REST framwork、統計、權限管理、商品數據管理、日志管理、用戶管理、前后端不分離模式、數據庫-讀寫分離、Django高級第三方模塊、FastDFS分布式文件系統、Celery異步操作、Vue雙向綁定、Docker 入門、Crontab定時任務、頁面靜態化、在線支付、Nginx+uWSGI部署。
相應資源
Python進階之Django框架
Web-Flask框架解決的現實問題:
高并發全功能的Web網站開發;提升數據處理響應速度,靈活運用緩存。
掌握的核心能力:
1、掌握Python Web主流框架-Flask的使用;
2、掌握常見的性能優化技術;
3、緩存服務器的操作和設計;
4、異步任務的實現。
要點:
Docker 進階、uWSGI、Nginx進階、性能優化、Flask框架、路由定義及視圖函數、藍圖、SQLAlchemy、Flask-RESTful、手機 APP + PC Web前端、MySQL業務數據存儲、Redis緩存層、第三方對象存儲、RabbitMQ + Celery 異步任務、APSchedule定時任務、http://socket.io及時通訊、Elasticsearch 5.6 搜索+自動補全、RPC+kafka對接推薦系統與AI系統、supervisor進程管理。
相應資源
6節課入門Flask框架web開發
人工智能機器學習編程解決的現實問題:
利用學習到的科學計算庫對收集到的數據進行數據基本處理,使其符合機器學習算法模型;利用學習到的機器學習算法解決部分實際問題。
掌握的核心能力:
1、掌握數據挖掘基礎工具使用;
2、掌握機器學習中處理數據方法;
3、理解常見機器學習算法原理。
要點:
人工智能概述、數據可視化matplotlib、科學計算庫numpy、科學計算庫pandas、Scikit-learn使用、特征工程、k-近鄰算法、線性回歸、嶺回歸、邏輯回歸、決策樹、集成學習(Bagging, Boosting)、k-means、不同模型評估方法介紹、模型選擇與調優、模型保存和加載、聚類、分類。
相應資源
0基礎小白也能學會的人工智能課
最簡單快速入門Python機器學習
人工智能基于大數據的推薦系統解決的現實問題:
能夠實現推薦系統的算法不同場景應用;能夠根據推薦場景業務流完成推薦業務開發。
掌握的核心能力:
1、掌握推薦系統的工作原理和實現流程;
2、掌握推薦系統的算法實現原理以及應用場景;
3、掌握Lambda大數據相關基礎;
4、可實現基于大數據框架的推薦系統搭建;
5、能夠基于推薦業務流完成系統搭建。
要點:
分布式存儲計算案例、數據倉庫工具hive、spark-sql、spark sql與hive離線分析、ABTest實驗中心、埋點參數設置、推薦服務、緩存服務、實時日志分析、實時召回集、熱門與新文章、文章畫像構建、用戶畫像構建、文章用戶畫像業務實現、離線召回集介紹、排序模型選擇介紹、spark mllib講解、離線模型評價、評估場景需求
相應資源
云計算大數據之zookeeper教程
最后更多是實戰了,更多偏向于數據分析:對企業異常數據進行深入分析,對業務風險指標進行跟蹤分析及優化;搭建業務監控體系,及時發現、排查業務問題,并能提出有效的解決策略或方案;配合項目計劃,負責建模駐場項目,完成數據分析需求及任務;通過大數據算法對數據進行模型的構建、維護、和評估。
掌握的核心能力:
1、熟悉常用數據挖掘算法與模型,熟悉邏輯回歸、神經網絡、決策樹、聚類等建模方法;
2、熟悉Python、Tableau、SPSS、SAS等多種數據分析工具;
3、熟練使用時間序列、聚類分析、邏輯回歸、因果分析等統計方法。
要點:
統計學基礎、Python編程數據分析、SPSS數據分析、數據化運營,網絡游戲市場分析,及電商數據分析,問卷數據分析、CRM、BI理論、數據可視化分析
最后python拓展就是爬蟲和自動化測試運維了,
屬于拓展項目。也是很重要的接近工作的。但前期學習的話還是用不到的。拓展的各種項目、實戰等,建議先把基礎打牢再去學。
最后,上面的資源回復:“python整套資源”,就可領取咯。
希望上面內容對你有幫助,可以進行分享留言對上面內容進行補充。