使用python已經很長一段時間了,也看過了不少python教程,但從來沒想過要自己寫一個,因爲再怎麼寫也沒有人家出書的寫得好,今天靜下心來謝謝python教程,不爲別的,就是讓看到這個教程的人都能在花半個小時看完以後,知道python能幹什麼,並且馬上能動起手來做一些什麼東西。
我將按照以下幾個部分來說說我理解的python,很多地方我只說一下一些非常常用的功能,具體的細節,大家都是有文化的人,完全可以google或者直接查python的庫文檔,我相信這些能比我說得更好也更詳細。
目錄
開始前的準備
基本控制流程
基本數據結構
函數使用
類使用
開始前的準備
1.安裝
安裝非常容易,到官網上下載下來,一路next就裝好了,記得到官網上點擊下載啊,整個首頁上面就這兩個字是中文,多虧了我們偉大的牆,讓全世界的pythoner們都認識了這兩個中文,下個2.7.3吧,有最新的3版本的,但是我所將的都是基於2.7.3的。
2.使用
打開控制檯,輸入python,然後回車,看到下面的東西的話,恭喜你,python已經正常安裝並且已經可以使用了
Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32Type "copyright", "credits" or "license()" for more information.
>>
前期工作準備完畢,可以開始編程了
哦,提前說一點,在python中是沒有括號來分割代碼塊的,所有的代碼分割都是用TAB鍵來分割的,這對第一次用的人來說可能有點不習慣,不過沒關係,用用就習慣了
基本流程控制
首先,我默認您已經有過其他語言的開發經驗,不管多少,反正python不是您的第一個開發語言,那流程控制就不需要我解釋了,無非就是賦值
,if
,for
,while
,switch
之類的
賦值
python變量不需要先聲明,語言自動適配最合適的變量類型
a=5
b=a
c=a+5*b+10^2
d=True
這些都可以直接使用,不用像C語言一樣聲明來聲明去的,所以python非常適合快速化的開發,因爲不用去想那些惱人的類型轉換和聲明,當然,這樣做也有弊端,那就是太隨意了不好控制。
type函數可以方便的知道變量是哪個類型的數據
>> type(a)
>> <type 'int'>
條件語句
所有語言的條件語句無非就是if --else
,python也不例外,注意一下三點:
條件語句的
if
或者else
後面要跟一個冒號:
注意要使用TAB進行縮進
條件語句中的
and
,or
,not
等,直接使用and,or,not,沒有像 &&,||這樣的轉義符號if語句中的括號不是必要的
看個例子:
a=5
b=10
if a == b and b > 0:
print "ok"
else:
print "not ok"
循環語句
循環語句變化較多,一般使用其中的三種方式
for循環
使用
for in
語句進行for循環for
循環後面也要冒號可以用類似於迭代器的方式來進行
for
循環
看兩個例子,一個是標準的循環
for i in range(0,10):
print i
這個是迭代器的
a=[1,3,5,7,9]
for i in a:
print i
while循環
和其他語言一樣,條件判斷,然後循環
while (a > 100):
print a
a=a+1
基本數據結構
應該叫豐富的數據結構,因爲我覺得python的數據結構真的很贊,一個語言的數據結構的豐富程度可以讓你省很多事,讓你更專注於邏輯層面的開發而不是去高效的實現某些數據結構,這一章我們介紹一下python中兩個最主要的數據結構,一般情況下,有這兩個利器,就能變出很多花樣來了
列表
簡單的說,就是數組
列表中可以存儲各種不同類型的數據
使用
[]
來進行聲明不用事先聲明數組的長度,可以動態增加或者刪除
強大的數組切片功能
看個例子來說明一下數組的使用哈
aArray=[] #初始化一個列表
aArray.append(1)
aArray.append(2.0)
aArray.append(True)
aArray.append("ABCDEFG") #往列表中添加不同類型的元素
print aArray
>>> [1, 2.0, True, 'ABCDEFG'] #顯示列表
bArray=aArray[1:3] #將列表中第1個元素到第2個元素賦值到新的列表中
print bArray
>>> [2.0, True]
是不是很簡單?而且列表已經很強大了,很多東西都可以往列表裏面丟。
字典
簡單的說,就是哈希表(hashtable)
和其他語言的字典一樣,由
key
和value
組成使用
{}
來進行聲明,使用[]
來進行操作key
是唯一的不能重複,value
可以重複字典的各個
value
中可以存儲不同的數據類型,同時,key
的類型也沒有限制
還是來看個例子說明一下字典的使用:
aDic={} #初始化一個空字典
aDic['first']=1 #將1存到字典中,其對應的key是"first"
aDic[1]="this is value" #將"this is value"存到字典中,對應的key是一個整數1
print aDic
>>> {'first': 1, 1: 'this is a value'}
for key in aDic.keys(): #遍歷整個字典
print aDic[key] #打印key對應的值
>>> 1
>>> this is a value
字典也介紹完了,是不是越來越覺得簡單了啊?python就是這樣的,非常潔簡,但是實際上功能非常強大,別看列表和字典都很簡單,在編程的過程中你會不知不覺的使用起來並且會覺得非常的方便。
當然,python中還有其他很多數據結構,比如二元組,字符串等等,但是這裏我們就不介紹了,這篇教程只是爲了讓一個使用過別的語言的人對python的快速上手並可以實際編寫一些東西,深入的數據結構的瞭解,還是我前面說的,去看幫助文檔吧,那上面有你要的一切。
函數使用
無論哪種編程語言,都離不開函數,python也不例外,函數的聲明在python裏面也很簡單,實用 def
關鍵字來聲明
使用
def function_name(parm):
來聲明一個函數不用顯式的標出返回值
函數的參數不用標出類型
還有個最重要的,函數的返回值可以是多個
下面,我們還是來看個例子,很簡單的例子,求兩個數中較大的那個,如果兩個數相等,就返回一個錯誤
def funmax(a,b):
if a < b :
return b,True
else:
if a==b :
return a,False
else:
if a > b :
return a,True
>>> a,err=funmax(10,15)
>>> print a,err
>>> 15,True
>>> a,err=fun_max(10,10)
>>> print a,err
>>> 10,False
類的使用
python是一門面向對象的語言,當然少不了類的聲明和使用啦。同樣,秉承python一貫的潔簡,類的聲明和使用也很簡單
使用
class Name(parent):
來聲明類,其中Name是類名,parent是父類的名稱使用
def __init__(self,parm):
定義構造函數所有類的方法都需要有
self
參數類的成員變量都在類下面定義
使用
parent.XXX
來調用父類的方法或者構造函數使用
.
操作符來調用類的方法使用
Name
來實例化該類的對象
好了,不多說了,看個例子,定義一個圓,有半徑這個成員變量,可以計算周長和麪積。
class Circle:
r=0.0
def __init__(self,mr=4): #默認半徑爲4
self.r=mr
def area():
return self.rself.rmath.PI
當我們要使用這個類的時候,這麼用
circle=Circle(5)
area= circle.area()
好了,類整明白了吧
結束語
好了,所有的東西都介紹完了,大概花了你10分鐘吧,這就是python最簡單的使用方法,我想,對於一個有過其他任何編程語言經驗的人,看完這個教程以後應該可以馬山上手開始做你需要的東西了吧,當然,python完全不止我說的這些,還有很多很多功能等着你去發現,只要開始了,後面的就好辦了,google和api文檔都可以幫到你
另外,還有一篇python的文章,是我之前做的筆記,你看完這個以後可以去看看這一篇:http://blog.csdn.net/ygrx/article/details/794785