第一節(jié)
一、適合領(lǐng)域
2、系統(tǒng)工具和腳本
3、膠水語言:其他模塊包裝起來組合使用
二、不適用領(lǐng)域
1、驅(qū)動程序
2、iOS、安卓
3、游戲c或者c++
三、應(yīng)用
YouTube、instagram、搜狐郵箱、豆瓣、open stack
四、與其他語言對比

缺點(diǎn):1、速度慢,因?yàn)閿?shù)據(jù)庫2、代碼不能加密
第三節(jié) 數(shù)據(jù)類型
在Python中,能夠直接處理的數(shù)據(jù)類型有以下幾種:
一、整數(shù)
二、浮點(diǎn)數(shù)
浮點(diǎn)數(shù)也就是小數(shù),之所以稱為浮點(diǎn)數(shù),是因?yàn)榘凑湛茖W(xué)記數(shù)法表示時(shí),一個(gè)浮點(diǎn)數(shù)的小數(shù)點(diǎn)位置是可變的,
三、字符串
字符串是以''或""括起來的任意文本,比如'abc',"xyz"等等。
四、布爾值
布爾值和布爾代數(shù)的表示完全一致,一個(gè)布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運(yùn)算計(jì)算出來。
布爾值可以用and、or和not運(yùn)算。
and運(yùn)算是與運(yùn)算,只有所有都為 True,and運(yùn)算結(jié)果才是 True。
or運(yùn)算是或運(yùn)算,只要其中有一個(gè)為 True,or 運(yùn)算結(jié)果就是 True。
not運(yùn)算是非運(yùn)算,它是一個(gè)單目運(yùn)算符,把 True 變成 False,F(xiàn)alse 變成 True。
五、空值
空值是Python里一個(gè)特殊的值,用None表示。None不能理解為0,因?yàn)?是有意義的,而None是一個(gè)特殊的空值。
第三節(jié) 數(shù)據(jù)類型
在Python中,能夠直接處理的數(shù)據(jù)類型有以下幾種:
一、整數(shù)
二、浮點(diǎn)數(shù)
浮點(diǎn)數(shù)也就是小數(shù),之所以稱為浮點(diǎn)數(shù),是因?yàn)榘凑湛茖W(xué)記數(shù)法表示時(shí),一個(gè)浮點(diǎn)數(shù)的小數(shù)點(diǎn)位置是可變的,
三、字符串
字符串是以''或""括起來的任意文本,比如'abc',"xyz"等等。
四、布爾值
布爾值和布爾代數(shù)的表示完全一致,一個(gè)布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運(yùn)算計(jì)算出來。
布爾值可以用and、or和not運(yùn)算。
and運(yùn)算是與運(yùn)算,只有所有都為 True,and運(yùn)算結(jié)果才是 True。
or運(yùn)算是或運(yùn)算,只要其中有一個(gè)為 True,or 運(yùn)算結(jié)果就是 True。
not運(yùn)算是非運(yùn)算,它是一個(gè)單目運(yùn)算符,把 True 變成 False,F(xiàn)alse 變成 True。
五、空值
空值是Python里一個(gè)特殊的值,用None表示。None不能理解為0,因?yàn)?是有意義的,而None是一個(gè)特殊的空值。
注釋
任何時(shí)候,我們都可以給程序加上注釋。注釋是用來說明代碼的,給自己或別人看,而程序運(yùn)行的時(shí)候,Python解釋器會直接忽略掉注釋,所以,有沒有注釋不影響程序的執(zhí)行結(jié)果,但是影響到別人能不能看懂你的代碼。
Python的注釋以#開頭,后面的文字直到行尾都算注釋
變量
等差數(shù)列可以定義為每一項(xiàng)與它的前一項(xiàng)的差等于一個(gè)常數(shù),可以用變量 x1 表示等差數(shù)列的第一項(xiàng),用 d 表示公差
定義字符串
如果字符串既包含'又包含"怎么辦?
這個(gè)時(shí)候,就需要對字符串的某些特殊字符進(jìn)行“轉(zhuǎn)義”,Python字符串用\進(jìn)行轉(zhuǎn)義。
要表示字符串Bob said "I'm OK".
由于 ' 和 " 會引起歧義,因此,我們在它前面插入一個(gè)\表示這是一個(gè)普通字符,不代表字符串的起始,因此,這個(gè)字符串又可以表示為
'Bob said "I'm OK".'
注意:轉(zhuǎn)義字符 \ 不計(jì)入字符串的內(nèi)容中。
常用的轉(zhuǎn)義字符還有:
\n 表示換行
\t 表示一個(gè)制表符
\ 表示 \ 字符本身
raw字符串與多行字符串
如果要表示多行字符串,可以用'''...'''表示:
'''Line 1 Line 2 Line 3'''
怎樣將月份顯示在新的一行?
字符串以\n開始就可以了,像這樣:"\nJan\nFeb\nMar\nApr\nMay\nJun\nJul\nAug"
print result
Feb
Mar
Apr
May
Jun
Jul
Aug
Unicode字符串
因?yàn)镻ython的誕生比Unicode標(biāo)準(zhǔn)發(fā)布的時(shí)間還要早,所以最早的Python只支持ASCII編碼,普通的字符串'ABC'在Python內(nèi)部都是ASCII編碼的。
Python在后來添加了對Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:
print u'中文'
中文
注意:不加 u ,中文就不能正常顯示。
整數(shù)和浮點(diǎn)數(shù)
Python的整數(shù)除法,即使除不盡,結(jié)果仍然是整數(shù),余數(shù)直接被扔掉。
不過,Python提供了一個(gè)求余的運(yùn)算 % 可以計(jì)算余數(shù):
11 % 4 # ==> 3
布爾類型
因?yàn)镻ython把0、空字符串''和None看成False,其他數(shù)值和非空字符串都看成True,所以:
True and 'a=T' 計(jì)算結(jié)果是 'a=T'
繼續(xù)計(jì)算 'a=T' or 'a=F' 計(jì)算結(jié)果還是 'a=T'
要解釋上述結(jié)果,又涉及到 and 和 or 運(yùn)算的一條重要法則:短路計(jì)算。
在計(jì)算a and b時(shí),如果 a 是 False,則根據(jù)與運(yùn)算法則,整個(gè)結(jié)果必定為 False,因此返回 a;如果 a 是 True,則整個(gè)計(jì)算結(jié)果必定取決與 b,因此返回 b。
在計(jì)算a or b時(shí),如果 a 是 True,則根據(jù)或運(yùn)算法則,整個(gè)計(jì)算結(jié)果必定為 True,因此返回 a;如果 a 是 False,則整個(gè)計(jì)算結(jié)果必定取決于 b,因此返回 b。
創(chuàng)建list
構(gòu)造list非常簡單,按照上面的代碼,直接用[ ]把list的所有元素都括起來,就是一個(gè)list對象。通常,我們會把list賦值給一個(gè)變量,這樣,就可以通過變量來引用list:
classmates = ['Michael', 'Bob', 'Tracy']
classmates # 打印classmates變量的內(nèi)容
['Michael', 'Bob', 'Tracy']
由于Python是動態(tài)語言,所以list中包含的元素并不要求都必須是同一種數(shù)據(jù)類型,我們完全可以在list中包含各種數(shù)據(jù):
L = ['Michael', 100, True]
一個(gè)元素也沒有的list,就是空list:
empty_list = []
按照索引訪問list
需要特別注意的是,索引從 0 開始,也就是說,第一個(gè)元素的索引是0,第二個(gè)元素的索引是1,以此類推。
因此,要打印第一名同學(xué)的名字,用 L[0]:
print L[0]
Adam
倒序訪問list
Bart同學(xué)是最后一名,俗稱倒數(shù)第一,所以,我們可以用 -1 這個(gè)索引來表示最后一個(gè)元素:
print L[-1]
Bart
添加新元素
append()總是把新的元素添加到 list 的尾部。
方法是用list的insert()方法,它接受兩個(gè)參數(shù),第一個(gè)參數(shù)是索引號,第二個(gè)參數(shù)是待添加的新元素:
L = ['Adam', 'Lisa', 'Bart']
L.insert(0, 'Paul')
print L
['Paul', 'Adam', 'Lisa', 'Bart']
從list刪除元素
pop()方法總是刪掉list的最后一個(gè)元素,并且它還返回這個(gè)元素,所以我們執(zhí)行 L.pop() 后,會打印出 'Paul'。
替換元素
直接賦值
L = ['Adam', 'Lisa', 'Bart']
L[0] = 'Bart'
L[-1] = 'Adam'
創(chuàng)建tuple
tuple是另一種有序的列表,中文翻譯為“ 元組 ”。tuple 和 list 非常類似,但是,tuple一旦創(chuàng)建完畢,就不能修改了。
同樣是表示班里同學(xué)的名稱,用tuple表示如下:
t = ('Adam', 'Lisa', 'Bart')
創(chuàng)建tuple和創(chuàng)建list唯一不同之處是用( )替代了[ ]。
現(xiàn)在,這個(gè)t就不能改變了,tuple沒有 append()方法,也沒有insert()和pop()方法。所以,新同學(xué)沒法直接往 tuple 中添加,老同學(xué)想退出 tuple 也不行。
創(chuàng)建單元素tuple
正是因?yàn)橛?)定義單元素的tuple有歧義,所以 Python 規(guī)定,單元素 tuple 要多加一個(gè)逗號“,”,這樣就避免了歧義:
t = (1,)
print t
(1,)
Python在打印單元素tuple時(shí),也自動添加了一個(gè)“,”,為了更明確地告訴你這是一個(gè)tuple。
多元素 tuple 加不加這個(gè)額外的“,”效果是一樣的:
t = (1, 2, 3,)
print t
(1, 2, 3)