神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

果果程式設計師發表於2018-02-28

神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

IT相關程式設計越來越在網際網路中佔據重要的位置,而在其中又屬AI正當熱門時刻。如果你想要在這個行業發展,那麼就先從Python程式語言的學習開始!Python是一門通用的程式語言,在過去十年中被資料科學領域廣泛使用。目前Python在程式語言超過java語言,程式語言排行排名第一,成為全球最受歡迎的程式語言!

本篇文章的主要目的在於向大家展示使用Python學習資料科學有多麼的容易。你可能以為自己要先成為一名高階Python程式設計師,然後才能進行通常與資料科學相關的複雜任務,然而事實並非如此。Python附帶了很多有用的工具庫,它們可以在後臺為你提供強大的支援。你甚至不需要知道程式在執行什麼,你不必關心這些。唯一你真正需要知道的是,你需要執行一些特定的任務,而Python使這些任務變得相當簡單。

下面分享給python小白入門教程及學習路線那麼讓我們現在從Python安裝開始吧。

配置資料科學所需的Python環境

無論你使用的電腦是Mac還是Windows,我都建議你下載一個免費的能夠讓你輕鬆訪問儘可能多的有用模組的Python發行版本。

 這裡還是要推薦下小編的Python學習群:483546416,不管你是小白還是大牛,小編我都歡迎,不定期分享乾貨,包括小編自己整理的一份2017最新的Python資料和0基礎入門教程,歡迎初學和進階中的小夥伴。在不忙的時間我會給大家解惑。

神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

我試用了一些Python的發行版本,在這裡,我推薦大家使用Continuum Analytics提供的Anaconda。這個Python發行版本包含200多個工具庫。要理解Python中包、模組和庫的差異,請查閱這篇文章。

在你下載Anaconda的時候,你需要選擇下載Python 2版本還是Python 3版本。我強烈建議你使用Python 2.17.12版本。截止到2016年底,絕大多數的非電腦科學的Python使用者都使用了這個Python版本。它能夠出色地完成資料科學任務,比Python 3更容易學習,而且像GitHub這樣的

神級程式設計師大佬分享給python小白入門教程及學習路線,漲知識啦!

網站中有數百萬的Python指令碼和程式碼片段,可供大家參考,生活會變得更加容易。

Anaconda也附帶了Ipython程式設計環境,建議大家使用。安裝Anaconda後,只需要導航到Jupyter筆記本並開啟程式,就可以在Web瀏覽器中開啟IPython。Jupyter筆記本的程式會自動啟動Web瀏覽器中的應用程式。

你可以參考這篇文章瞭解如何在Ipython筆記本中更改路徑。

基礎知識學習

在你深入瞭解Python的資料科學庫之前,你首先需要學習一些Python的基礎知識。Python是一門物件導向的程式語言。在Python中,物件既可以賦值給一個變數,也可以作為引數傳遞給一個函式。以下都是Python中的物件:數字、字串、列表、元組、集合、字典、函式以及類。

Python中的函式與普通數學中的函式基本上是一致的——它接收輸入資料,對資料進行處理並輸出結果。輸出的結果完全取決於函式是如何被設計的。另一方面,Python中的類是被設計為輸出其他物件的物件的原型。

如果你的目標是編寫快速、可複用、易於修改的Python程式碼,那麼你必須使用函式和類。使用函式和類有助於保證程式碼的高效與整潔。

現在,讓我們看看Python中有哪些可用的資料科學工具庫。

科學計算:Numpy與Scipy

Numpy是一個主要用於處理n維陣列物件的Python工具包,而Scipy則提供了許多數學演算法與複雜函式的實現,可用來擴充套件Numpy庫的功能。Scipy庫為Python新增了一些專門的科學函式,以應對資料科學中的一些特定任務。

為了在Python中使用Numpy(或其他任何Python庫),你必須首先匯入對應的工具庫。

np.array(scores) 將一個列表轉換成一個陣列。

當你使用普通的Python程式時——未使用任何外部擴充套件(例如工具庫)的Python程式——你只能受限地使用一維列表來儲存資料。但是,如果你使用Numpy庫來擴充套件Python,你可以直接使用n維陣列。(如果你想知道的話,n維陣列是包含一個或多個維度的陣列。)

下面小編給大家分享一個問卷星刷票專案例項,下面是專案程式碼實現:

#python3

# -*- coding: utf-8 -*-

#code like shit,just testing and personal use

__author__ = 'Taerg'

import requests

header = {

'Host': 'www.sojump.com',

'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:37.0) Gecko/20100101 Firefox/37.0',

'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',

'Accept-Language': 'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3,',

'Accept-Encoding': 'gzip, deflate',

'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',

'Referer': 'http://www.sojump.com/jq/5083814.aspx',

'Content-Length': '149',

'Cookie': '.ASPXANONYMOUS=Lyje67TM0AEkAAAAZmUxZjg2ZDktMGQxMy00N2FkLTk5MTktMTgzZTczMzI1MmQ4vetgQ0kJRBRF_ryF5iUJakL6RC01; ASP.NET_SessionId=ezddzrjpltnx1via0l2gdjz4; CNZZDATA4478442=cnzz_eid%3D601949447-1432471183-%26ntime%3D1432471183; LastActivityJoin=5083814,204649401; bdshare_firstime=1432473304766',

'X-Forwarded-For': '8.8.8.8',

'Connection': 'keep-alive',

'Pragma': 'no-cache',

'Cache-Control': 'no-cache'

}

header2 = {

'Host': 'www.sojump.com',

'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:37.0) Gecko/20100101 Firefox/37.0',

'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',

'Accept-Language': 'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3',

'Accept-Encoding': 'gzip, deflate',

'Referer': 'http://www.sojump.com/jq/5083814.aspx',

'Cookie': '.ASPXANONYMOUS=Lyje67TM0AEkAAAAZmUxZjg2ZDktMGQxMy00N2FkLTk5MTktMTgzZTczMzI1MmQ4vetgQ0kJRBRF_ryF5iUJakL6RC01; ASP.NET_SessionId=ezddzrjpltnx1via0l2gdjz4; CNZZDATA4478442=cnzz_eid%3D601949447-1432471183-%26ntime%3D1432471183; LastActivityJoin=5083814,204649401; bdshare_firstime=1432473304766',

'X-Forwarded-For': '8.8.8.8',

'Connection': 'keep-alive'

}

thedata = {'submitdata': '1$1}2$3}3$1}4$2}5$4}6$4}7$1|2|3|4}8$3}9$3}10$1|3|4|6}11$3}12$3}13$3}14$4'}

for no in range(1,1000):

#url = 'http://www.sojump.com/jq/5083814.aspx/handler/processjq.ashx?submittype=1&curID=5083814&t=1432473130531&starttime=2015/5/24 21:11:01&rn=138341469'

url = 'http://www.sojump.com/handler/processjq.ashx?submittype=1&curID=5083814&t=1432473130531&starttime=2015/5/24 21:11:01&rn=138341469'

url2 = 'http://www.sojump.com/jq/5083814.aspx/wjx/join/complete.aspx?q=5083814&JoinID=204649401&s=&ge=1'

#url2 = 'http://www.sojump.com/handler/processjq.ashx?/wjx/join/complete.aspx?q=5083814&JoinID=204649401&s=&ge=1'

r2 = requests.get(url2, headers = header2)

r = requests.post(url, headers = header,data = thedata)

print(r.text)

print(r2.text)

其實python精簡了很多不必要的分號和括號,非常容易閱讀理解。程式設計簡單直接,更適合初學程式設計者,讓其專注於程式設計邏輯,而不是困惑於晦澀的語法細節上,比起JAVA、C#和C/C++這些程式語言相對容易很多。即使是非計算機專業或者沒有基礎的小白,也快速入門。

好了,今天就分享到這裡,如果大家在遇到學習python不懂的地方,歡迎跟小編交流和學習!祝大家早日成為python大牛!

相關文章