python語句后面不需要分號,這和 谷歌主推的kotlin 語言一樣诬垂,或許劲室,以后的新語言,也會采用這種形式结窘。
使用過C的都知道很洋,變量要先聲明定義,才能使用隧枫,變量有很多類型喉磁,本以為php語言用 var就把所有類型包括進去,夠省略了官脓,沒想到python變量直接不用聲明协怒。
python變量直接賦值即可使用,個人理解為這樣的狀況: 賦值的時候卑笨,直接創(chuàng)建賦值內(nèi)容對應的類型對象孕暇,這個解釋器可自動判斷何種對象,分配好了內(nèi)存空間湾趾,創(chuàng)建好了對象芭商,然后將變量作為標識,分配給這個對象搀缠,以便標識使用铛楣。
這樣一來,解釋器自己可根據(jù)具體賦值判斷何種類型艺普,所以變量就不需要在聲明了簸州,直接賦值使用就可以了。
書寫規(guī)則
python歧譬,就我目前學習的過程看岸浑,去掉了用大括號標識語句塊,而是采用了縮進的方式瑰步,但是不知道為什么采用這種方式矢洲,可能有助于加快解釋器執(zhí)行,加快編譯吧缩焦。
這就要求读虏,首行頂格责静,同一層次對齊。
基本變量類型
isinstance() 與 type()
判斷對象類型盖桥,isinstance() 很圓滑的灾螃,很世故很講關系,考慮的多面些揩徊,考慮到了繼承關系腰鬼。
type () 很簡單,很單純塑荒,一根筋熄赡,老子才不考慮你祖宗十八代是誰,我只看你自己的實力袜炕,你父親祖父當大官本谜,和我半毛錢也沒關系。
多變量賦值
這種方式與C語言一樣偎窘,但是意義卻不一樣乌助,C語言是在內(nèi)存中分配三個整形空間,分別將其賦值為1陌知,python的含義是:創(chuàng)建一個整形對象他托,三個變量被分配到了相同的內(nèi)存上。
#為多個對象指定多個變量a,b,c=1,2,"gudianxiaoshuo"
這種賦值方式仆葡,就和其它語言有些不一樣了赏参。
相當于連續(xù)創(chuàng)建了三個內(nèi)存空間,分別分配對應的變量標識
標準數(shù)據(jù)類型
python提供了六種標準數(shù)據(jù)類型
Number 包括 int float bool complex
String
List
Tuple
Sets
Dictionary
1沿盅、數(shù)據(jù)Numer
Print格式化的語法與其它語言有差別
格式化我用的最爽的vc中CString的Format把篓,當然其它語言也能實現(xiàn)類似功能
Python中引用和其它語言類似 %d %f %s
但是具體的值的語法規(guī)則有點另類,它不是用逗號隔開腰涧,而是使用了%( )作為實際值韧掩,對應的實際值都放在了小括號里面了
如:
數(shù)值運算
String
字符串使用單引號或雙引號括起來,單引號雙引號含義一樣窖铡,(不像PHP疗锐,可能有兩種不同含義)
字符串截取也很有特色,
使用 變量[iStart][iEnd]
但是要注意费彼,實際截取的字符串范圍為[iStart,iEnd) ,包含開頭的iStart,但不包含結尾的iEnd
還有一個事滑臊,要注意,這里的字符串是常量箍铲,不能改變
和其它語言一樣雇卷,反斜杠也是轉(zhuǎn)義
不同的是,在字符串前面加r 表示不轉(zhuǎn)義,原樣輸出
字符串索引方式:
這個也比較有意思关划,比C++靈活多了
從左往右 從0開始 0 代表最開始的字符從右往左 從-1開始 -1代表最后的字符 -2代表倒數(shù)第二位的字符
List 列表
在數(shù)據(jù)結構中膘融,list是存儲線性關系的最常用的數(shù)據(jù)結構。
內(nèi)部實現(xiàn)有兩種類型:順序存儲祭玉、鏈式存儲。
數(shù)組就是典型的順序存儲春畔,連續(xù)的數(shù)據(jù)存儲空間脱货。鏈表就是鏈式存儲,每個元素的位置不一定連續(xù)律姨。
所幸振峻,在python中,你不必考慮它內(nèi)部是如何實現(xiàn)的择份,直接拿來用就可扣孟。
python的列表,相當于擴展的數(shù)組荣赶,數(shù)組只能存儲一種類型凤价,而python中列表可以同時存儲多種類型。
list與數(shù)組類似拔创,用 [] 賦值
list賦值
Tuple元組
與列表類似利诺,不同之處在于元組不能修改,類似于C++的常量數(shù)組
特殊之處剩燥,定義空元組 和 1個元素的元組
string慢逾、list和tuple都屬于有序的sequence(序列)。
下面要介紹的集合和字典就不是有序的序列了
set集合
由{} 或 set()創(chuàng)建
# 集合 無序 不重復#?創(chuàng)建空集合用set()?而不是 {}# {}是創(chuàng)建一個空字典
Dictionary字典
為什么起字典這么奇怪的類型名字灭红。
其實侣滩,大部分人很久沒用字典了,估計都想不起來怎么用了变擒。
字典是干嘛的君珠,是解釋字的。
字典中的字都是作為關鍵字赁项,不能重復葛躏,找到這個關鍵字,然后再看它的含義悠菜。
Dic【關鍵字】:含義
而Python中就采用了這種邏輯對應方式:
Dic[關鍵字 ]=關鍵字對應的值
內(nèi)部應該是使用的哈希表舰攒,哈希表可以實現(xiàn)快速查找
我們不必關注內(nèi)部實現(xiàn)方式,只要能拿來用就可以悔醋,