有人說問學python會不會過時,我問你人工智能什麼時間過時?有人說學python編程很難,我這裏10分鐘就可以帶你瞭解python。還在糾結學不學python、如何學python、去哪裏學python? 文章最後有Python資料。
什麼是python?
Python是種高級動態編程語言,1991年a,由Guido van Rossum創建發行。應用範圍從Web開發到數據科學再到DevOps。
Python是一種通用的腳本開發語言,比其他編程語言更加簡單、易學,其面向對象特性甚至比Java、C#、.NET更加徹底,因此非常適合快速開發。Python在軟件質量控制、開發效率、可移植性、組件集成、庫支持等方面均處於先進地位。
python注重簡潔、易讀性高、可拓展性強,尤其在數據科學領域,可以很好的支撐商業分析(探索性分析、數據可視化)、機器學習(數據清洗、算法建模)、深度學習(神經框架搭建)等場景。因此大部分的數據工作者願意選用Python開展工作,數據分析新手也會考慮通過Python入門數據分析。
在這裏還是要推薦下我自己建的羣:483546416,羣裏都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,大家都是軟件開發黨,不定期分享乾貨(只有Python軟件開發相關的),包括我自己整理的一份2018最新的Python進階資料和高級開發教程,歡迎進階中和進想深入Python的小夥伴
python有哪些優勢?
簡單:Python是一種代表簡單主義思想的語言。
易學:因爲Python有極其簡單的說明文檔,因此Python極其容易上手 。
開發效率高:Python 的開發效率高,是Python 的主要優勢。Python在Web開發、服務軟件開發等多方面也都有着廣泛的應用,並具有突出優勢。
python的應用領域有哪些?
如何10分鐘瞭解python?
【搭建開發環境】
1 可以到Welcome to Python.org下載安裝包,然後通過configure、make、make install進行安裝。
2 也可以到ActiveState | ActiveState去下載ActivePython組件包。(ActivePython是對Python核心和常用模塊的二 進制包裝,它是ActiveState公司發佈的Python開發環境。ActivePython使得Python的安裝更加容易,並且可以應用在各種操 作系統上。ActivePython包含了一些常用的Python擴展,以及Windows環境的編程接口)。對ActivePython來說,如果你是 windows用戶,下載msi包安裝即可;如果你是Unix用戶,下載tar.gz包直接解壓即可。
3 Python的IDE,包括PythonWin、Eclipse+PyDev插件、Komodo、EditPlus
【版本】
python2與python3是目前主要的兩個版本。
如下兩種情況下,建議使用python2:
1 你無法完全控制你即將部署的環境時;
2 你需要使用一些特定的第三方包或擴展時;
python3是官方推薦的且是未來全力支持的版本,目前很多功能提升僅在python3版本上進行。
【hello world】
1 創建hello.py
2 編寫程序:
if __name__ == '__main__':print "hello word"
3 運行程序:
python ./hello.py
【註釋】
1 無論是行註釋還是段註釋,均以#加一個空格來註釋。
2 如果需要在代碼中使用中文註釋,必須在python文件的最前面加上如下注釋說明:
# -* - coding: UTF-8 -* -
3 如下注釋用於指定解釋器
#! /usr/bin/python
【文件類型】
1 Python的文件類型分爲3種,即源代碼、字節代碼和優化代碼。這些都可以直接運行,不需要進行編譯或連接。
2 源代碼以.py爲擴展名,由python來負責解釋;
3 源文件經過編譯後生成擴展名爲.pyc的文件,即編譯過的字節文件。這種文件不能使用文本編輯器修改。pyc文件是和平臺無關的,可以在大部分操作系統上運行。如下語句可以用來產生pyc文件:
import py_compilepy_compile.compile(‘hello.py’)
4 經過優化的源文件會以.pyo爲後綴,即優化代碼。它也不能直接用文本編輯器修改,如下命令可用來生成pyo文件:
python -O -m py_complie hello.py【變量】
1 python中的變量不需要聲明,變量的賦值操作即使變量聲明和定義的過程。
2 python中一次新的賦值,將創建一個新的變量。即使變量的名稱相同,變量的標識並不相同。用id()函數可以獲取變量標識:
x = 1print id(x)x = 2print id(x)
3 如果變量沒有賦值,則python認爲該變量不存在
4 在函數之外定義的變量都可以稱爲全局變量。全局變量可以被文件內部的任何函數和外部文件訪問。
5 全局變量建議在文件的開頭定義。
6 也可以把全局變量放到一個專門的文件中,然後通過import來引用:
gl.py文件中內容如下:
_a = 1_b = 2
use_global.py中引用全局變量:
import gldef fun():print gl._aprint gl._bfun()
【常量】
python中沒有提供定義常量的保留字。可以自己定義一個常量類來實現常量的功能。
class _const:class ConstError(TypeError): passdef __setattr__(self,name,vlaue):if self.__dict__.has_key(name):raise self.ConstError, “Can’t rebind const(%s)”%nameself.__dict__[name]=valueimport syssys.modules[__name__]=_const()
【數據類型】
1 python的數字類型分爲整型、長整型、浮點型、布爾型、複數類型。
2 python沒有字符類型
3 python內部沒有普通類型,任何類型都是對象。
4 如果需要查看變量的類型,可以使用type類,該類可以返回變量的類型或創建一個新的類型。
5 python有3種表示字符串類型的方式,即單引號、雙引號、三引號。單引號和雙引號的作用是相同的。python程序員更喜歡用單引號,C/Java程序員則習慣使用雙引號表示字符串。三引號中可以輸入單引號、雙引號或換行等字符。
【運算符和表達式】
1 python不支持自增運算符和自減運算符。例如i++/i–是錯誤的,但i+=1是可以的。
2 1/2在python2.5之前會等於0.5,在python2.5之後會等於0。
3 不等於爲!=或<>
4 等於用==表示
5 邏輯表達式中and表示邏輯與,or表示邏輯或,not表示邏輯非
【控制語句】
1 條件語句:
if (表達式) :
語句1
else :
語句2
2 條件語句:
if (表達式) :
語句1
elif (表達式) :
語句2
…
elif (表達式) :
語句n
else :
語句m
3 條件嵌套:
if (表達式1) :
if (表達式2) :
語句1
elif (表達式3) :
語句2
…
else:
語句3
elif (表達式n) :
…
else :
…
4 python本身沒有switch語句。
5 循環語句:
while(表達式) :
…
else :
…
6 循環語句:
for 變量 in 集合 :
…
else :
…
7 python不支持類似c的for(i=0;i<5;i++)這樣的循環語句,但可以藉助range模擬:
for x in range(0,5,2):
print x
【數組相關】
1 元組(tuple):python中一種內置的數據結構。元組由不同的元素組成,每個元素可以存儲不同類型的數據,如字符串、數字甚至元素。元組是寫保護 的,即元組創建之後不能再修改。元組往往代表一行數據,而元組中的元素代表不同的數據項。可以把元組看做不可修改的數組。創建元組示例如下:
tuple_name=(“apple”,”banana”,”grape”,”orange”)
2 列表(list):列表和元組相似,也由一組元素組成,列表可以實現添加、刪除和查找操作,元素的值可以被修改。列表是傳統意義上的數組。列表創建示例如下:
list=[“apple”,”banana”,”grage”,”orange”]
可以使用append方法來在尾部追加元素,使用remove來刪除元素。
3 字典(dictionary):由鍵-值對組成的集合,字典中的值通過鍵來引用。鍵和值之間用冒號隔開,鍵-值對之間用逗號隔開,並且被包含在一對花括號中。創建示例如下:
dict={“a”:”apple”, “b”:”banana”, “g”:”grage”, “o”:”orange”}
4 序列:序列是具有索引和切片能力的集合。元組、列表和字符串都屬於序列。
【函數相關】
1 python程序由包(package)、模塊(module)和函數組成。包是由一系列模塊組成的集合。模塊是處理某一類問題的函數和類的集合。
2 包就是一個完成特定任務的工具箱。
3 包必須含有一個__init__.py文件,它用於標識當前文件夾是一個包。
4 python的程序是由一個個模塊組成的。模塊把一組相關的函數或代碼組織到一個文件中,一個文件即是一個模塊。模塊由代碼、函數和類組成。導入模塊使用import語句。
5 包的作用是實現程序的重用。
6 函數是一段可以重複多次調用的代碼,函數定義示例如下:
def arithmetic(x,y,operator):result={“+”:x+y,“-“:x-y,“*”:x*y,“/”:x/y}
7 函數返回值可以用return來控制。
【字符串相關】
1 格式化輸出:
format=”%s%d” % (str1,num)print format
2 用+進行字符串的合併:
str1=”hello”str2=”world”result=str1+str2
3 字符串截取可以通過索引/切片,也可以通過split函數。
4 通過切片截取字符串:
word=”world”print word[0:3]
5 python使用==和!=來進行字符串比較。如果比較的兩個變量的類型不相同,那麼結果必然爲不同。
【文件處理】
1 簡單處理文件:
context=”hello,world”f=file(“hello.txt”,’w’)f.write(context);f.close()
2 讀取文件可以使用readline()函數、readlines()函數和read函數。
3 寫入文件可以使用write()、writelines()函數
【對象和類】
1 python用class保留字來定義一個類,類名的首字符要大寫。當程序員需要創建的類型不能用簡單類型來表示時,就需要定義類,然後利用定義的類創建對象。定義類示例:
class Fruit:def grow(self):print “Fruit grow”
2 當一個對象被創建後,包含了三方面的特性,即對象的句柄、屬性和方法。創建對象的方法:
fruit = Fruit()fruit.grow()
3 python沒有保護類型的修飾符
4 類的方法也分爲公有方法和私有方法。私有函數不能被該類之外的函數調用,私有的方法也不能被外部的類或函數調用。
5 python使用函數”staticmethod()“或”@ staticmethod“指令的方法把普通的函數轉換爲靜態方法。靜態方法相當於全局函數。
6 python的構造函數名爲__init__,析構函數名爲__del__
7 繼承的使用方法:
class Apple(Fruit):def …
【連接mysql】
1 用MySQLdb模塊操作MySQL數據庫非常方便。示例代碼如下:
import os, sysimport MySQLdbtry:conn MySQLdb.connect(host=’localhost’,user=’root’,passwd=’’,db=’address’except Exception,e:print esys.exit()cursor=conn.cursor()sql=’insert into address(name, address) values(%s, %s)’value=((“zhangsan”,”haidian”),(“lisi”,”haidian”))trycursor.executemany(sql,values)except Exception, e:print esql=”select * from address”cursor.execute(sql)data=cursor.fetchall()if datafor x in data:print x[0],x[1]cursor.close()conn.close()
入門python這麼容易,爲什麼有人學習python又放棄?
1. 親手搭建本地編程環境的繁瑣工程量、過程中冒出的各種安裝Bug,非常容易讓初學者喪失學習興趣(特別是非計算機相關專業出身的朋友);
2. 面對網絡公開分享的大量數據分析相關知識、學習教程,不知該如何甄別、篩選;
3. 好不容易啃完教程、學會編程,發現當面對真實商業數據分析問題時,腦袋一片空白,無從下手。
我們如何堅持學好python?
Python在人工智能、機器學習領域受到火熱追捧,很大程度上在於它擁有非常龐大的第三方庫,以及強大的通用編程性能。因此,快速掌握Python進行數據分析,就是學習Python各種第三方庫、工具包的過程。
對於新手,如何學好python,這些很關鍵:
Part1:能掌握好Python關鍵代碼以及Pandas、Numpy、Matplotlib、Seaborn這四個基本工具包,便能獨立完成一些簡單的數據分析工作了。
Part2:工欲善其事,必先利其器,所以你必須選擇體驗良好的數據分析編程環境。
Part3:用真實商業數據應用項目檢驗能力
學習Python的最終目的,是爲了掌握數據分析技能,擁有解決實際工作或日常生活中與數據分析相關問題的能力。
寫在最後
前幾天有私信我要Python的學習資料,我連夜整理了一些有深度的Python教程和參考資料,從入門到高級的都有,文件已經打包好了,正在學習Python的同學可以免費下載學習學習。文件下載方式關注微信公衆號:程序員大牛,關注後私信回覆“Python”即可下載。首先把代碼擼起來!首先把代碼擼起來!首先把代碼擼起來!重要的事說三遍,哈哈。“編程是門手藝活”。什麼意思?得練啊。