Python即是我們常說的網絡爬蟲,如果將互聯網比作大型網絡,python就是在網上爬行的蜘蛛,如果遇到獵物(必需資源),就會將其抓取。例如,它爬行一個網頁后,然后在該網頁上找到一種方法,這種方法實際上是該網頁的超鏈接,然后爬行到另一個網頁或者網站以獲取更多的數據。聽上去是不是很有意思,我在中培偉業學習python之后,就有種飛起來的感覺。下面是我學習python的心得體會,帶你了解有趣的python。
python的下載
python爬蟲,首先需要本地電腦上安裝有python,這里我簡單說一下python的安裝,我相信學爬蟲的同學們肯定有一定的python基礎了。
首先,進入到python官網,你可以直接輸入python主頁,也可以從百度搜索框進入到python的主頁,這里方法很多,我不在一一例舉了,然后在主頁上面可以看見Downloads字樣,點擊下載,然后跳轉出下載界面。
跳轉出python下載界面,選擇一個版本進行下載,這里的我3.X和2.7.X版本的差別還是蠻大的,這里我就不在累贅了,python2.7的支持包要更加全面完善,python3的包擴展可能比較少,但是正在慢慢開發;python2.7預計在202X停止更新了;但是由于小編的習慣,這里我選擇的是2.7版本。
安裝好后,按windos鍵加R鍵,彈出運行窗口,在運行窗口輸入cms進入到命令行界面,然后輸入python,如果安裝成功,即可進入到python交互界面,如果沒有則表示python沒有安裝成功。
如何讓輸出不換行輸出
程序中如何讓輸出不換行輸出,例如如何使用range輸出1,2,3,4,5,使他們在同一行上,其實很簡單,只要在print語句后面加一個逗號,程序中怎樣換行,而不影響輸出結果。(一般用于語句過長時)可以用分開語句。)
\表示字符串中的\n表示字符串中的換行
'表示單引號,"表示雙引號
程序中"""很厲害,兩個"""中可以有'和",并且不會影響輸出結果,可以將'和"輸出。(python中'和"的用法完全一樣,也就是說這里的三引號也可以是''')
最后說一下在程序中怎么輸出5排*****,這里使用兩個for 循環嵌套,這個肯定不用說了,我想提的是怎么每輸出5個*就換行,其實就是讓第二個print的縮進和內層的for是一樣的,這表明它是外層for循環中的語句,每次i的循環中,它會執行一次。第二個print后面沒有寫任何東西,是起到換行的作用,這樣,每輸出5個*,就會換行。
python的作用
【階段一】Python編程
Python基礎
Python概述:Python簡史、Python應用場景、Python當前發展
語法基礎:變量類型、分支語句、循環語句
函數:函數初步、細說參數、變量作用域、遞歸調用
面向對象編程(OOP) OOP基礎、公有私有問題、繼承、組合& Mixin
數據結構初步:列表(list)、元組(tuple)、字典(dict)、集合(set)
異常處理:異常概述、try/except、Finally、Raise、with
擴展課程:Linux系統運維、Python圖形界面(GUI)開發、(qt或者tkinter任選)
階段貫穿項目:計算器、隨機抽獎、壓縮軟件、猜數字
【階段二】Python高級特性
Python高級特性
Python模塊:模塊基本使用、搜索路徑問題、DIY自己的模塊
調試技術:調試技術簡介、Pdb調試、Pycharm中的調試
魔法函數:魔法函數概述、構造類魔法函數、運算類魔法函數
多線程:多線程/進程簡介、Python的多線程
Net編程:Socket編程、Urllib庫、Requests庫、Mail處理
序列化:文件(file)處理、XML編程、Pickle模塊
其他常用模塊:commands、sys 模塊、os模塊、time、random
擴展課程:Pygame、微信公眾號開發-API使用、Shelve模塊、JSON格式、多線程-協程,gevent
階段課程項目:飛機大戰(OOP,GUI) WebServer模擬(HTTP協議) 自動郵件發送軟件(Net編程) 聊天室(Net編程)
【階段三】軟件核心算法&全棧
軟件核心算法&全棧
核心算法:代碼規范、數據結構、設計模式、版本控制
數據庫:數據庫簡介、Mysql、MongoDB、Redis
前端技術:HTML+CSS、Javascript、Ajax、jQuery
擴展課程:Memcached、Bootstrap、其他常見設計模式
階段課程項目:商城界面模擬
【階段四】WEB框架
WEB框架
Django:Django的路由模塊、Django中的View、ORM在django中的應用、模板系統介紹、Django常用安全控制
Tornado:Tornado的路由、Tornado使用的模板系統、Views模塊、Tornado對數據庫的支持、Tornado的異步處理
擴展課程:Flask框架、RESTful開發、Celery使用
AJAX
Ajax AJAX:簡介、XMLHttpRequest對象詳解、JQuery的AJAX、Ajax處理服務端返回的文本、XML和JSON格式的數據
WEB高級
Web強化:MD5加密、分頁、文件上傳、下載、動態代理
項目管理
SVN&Maven 掌握SVN的配置和使用,Maven介紹及依賴管理;安裝配置;核心概念、與第三方Eclipse的整合、Maven管理Web應用;Maven管理SSH應用;使用Maven進行測試及集成;掌握Maven在Java Web應用的配置、管理和使用等技術。
階段貫穿項目:在線商城 開源在線服務系統 Tornado Web后臺處理。
【階段五】大數據&人工智能
大數據&人工智能
爬蟲:爬蟲原理、Urllib爬取技術、Requests爬取技術、Scrapy框架
大數據:數據科學簡介、數據操作工具使用、數據呈現工具使用、基本數據分析算法
人工智能(AI):人工智能簡介、Tensoflow使用、AI算法
階段貫穿項目: 知識圖譜繪制(某創業項目)、跨境電商BI數據分析
畢業項目:元器件識別系統、爬蟲爬取互聯網數據、手寫筆跡識別 關于Linux運維
linux系統基礎,這個不用說了,是基礎中的基礎,連這個都不會就別干了,參考書籍,可以看鳥哥linux基礎篇,至少要掌握這書60%內容,沒必須全部掌握,但基本命令總得會吧。
網絡服務,服務有很多種,每間公司都會用到不同的,但基礎的服務肯定要掌握,如FTP, DNS,SAMBA, 郵件, 這幾個大概學一下就行,LAMP和LNMP是必須要熟練,我所指的不是光光會搭建,而是要很熟悉里面的相當配置才行,因為公司最關鍵的絕對是WEB服務器,所以nginx和apache要熟悉,特別是nginx一定要很熟悉才行,至少有些公司還會用tomcat,這個也最好學一下。其實網絡服務方面不用太擔心,一般公司的環境都已經搭建好,就算有新服務器或讓你整改,公司會有相應的文檔讓你參照來弄,不會讓你亂來的,但至少相關的配置一定要學熟,而且肯定是編譯安裝多,那些模塊要熟悉一下他的作用,特別是PHP那些模塊。這面2點只是基礎,也是必要條件,不能說是工具,以才是真正的要掌握的工具。
shell腳本和另一個腳本語言,shell是運維人員必須具備的,不懂這個連入職都不行,至少也要寫出一些系統管理腳本,最簡單也得寫個監控CPU,內存比率的腳本吧,這是最最最基本了,別以為會寫那些猜數字和計算什么數的,這些沒什么作用,只作學習意義,寫系統腳本才是最有意義,而另一個腳本語言是可選的,一般是3P,即python, perl和php,php就不需要考慮了,除非你要做開發,我個人建議學python會比較好,難實現自動化運維,perl是文本處理很強大,反正這兩個學一個就行了。
python是一項有趣的技術,學習之后可以秘密地爬行一些感興趣的圖片,爬行知乎用戶頭像等等。好了關于python的學習心得,分享到這里就結束了,想了解更多于python的信息,請繼續關注中培偉業。