Life is short,you need python!(1)

前言

Python是一種什么語言呢?

首先,我們先了解一下編程語言的基本知識(shí):用任何編程語言來開發(fā)程序都是讓計(jì)算機(jī)為我們所用,比如開發(fā)一款A(yù)PP、編寫一篇文檔等等。而計(jì)算機(jī)干活的CPU只聽得懂機(jī)器指令,所以盡管不同的編譯語言差異很大最后都得翻譯成CPU可以執(zhí)行的機(jī)器指令。

而不同的編譯語言,干同一個(gè)活,編寫的代碼量差異也很大。比如,做同一個(gè)游戲,C語言要寫1000行代碼,C++要寫300行,而Python也許只要30行。

所以Python是一種非常高級(jí)的語言。


【1】Python與其他語言對(duì)比

整理得不好請(qǐng)指正

綜上所述,Python是一種解釋型(沒有編譯環(huán)節(jié))、交互式(可以在一個(gè)Python提示符下直接互動(dòng)執(zhí)行你寫的程序)、面向?qū)ο?/b>(支持面向?qū)ο蟮娘L(fēng)格或代碼封裝在對(duì)象的編程技術(shù))、動(dòng)態(tài)數(shù)據(jù)類型的高級(jí)程序語言。

【2】準(zhǔn)備階段

(以下是2.X版本)

1)IDE

①PYCharm(https://www.jetbrains.com/pycharm/download/)

帶有一整套可以幫助用戶在使用Python語言開發(fā)時(shí)提高其效率的工具,比如調(diào)試、語法高亮、project管理、代碼跳轉(zhuǎn)、智能提示、自動(dòng)完成、單元測(cè)試、版本控制。此外,該IDE提供了一些高級(jí)功能,以用于支持Django框架下的專業(yè)Web開發(fā)。

②Cpython

官方版本,下載時(shí)自帶。

2)文本編輯器

在python的交互式命令行寫程序,雖然能立即得到結(jié)果,但是無法保存。所以實(shí)際開發(fā)時(shí)總是使用一個(gè)文本編輯器來寫代碼,寫完保存成一個(gè)文件后就可以反復(fù)運(yùn)行程序了。

Notepad++

我用的是下載自帶的Untitled

難點(diǎn)


小結(jié)

【3】基礎(chǔ)要打好!

1)輸入和輸出

輸出

print會(huì)依次打印每個(gè)字符串,遇到“,”會(huì)輸出一個(gè)空格。

輸入

任何計(jì)算機(jī)程序都是為了執(zhí)行一個(gè)特定任務(wù),有了輸入用戶才能告訴計(jì)算機(jī)程序所需的信息;有了輸出,程序運(yùn)行后才能告訴用戶任務(wù)的結(jié)果。

raw_input和print是在命令行下最基本的輸入和輸出。

2)數(shù)據(jù)類型

在Python中,能直接處理的數(shù)據(jù)類型有:

①整數(shù):和數(shù)學(xué)上一樣,如110、-666等;用十六進(jìn)制(0x前綴)較方便,如0xff00等。包括有長(zhǎng)整型long(用L表示)和符號(hào)整型int。

②浮點(diǎn)數(shù)(float):就是小數(shù),可用數(shù)學(xué)寫法,如1.23、-6.54;對(duì)很大或很小的浮點(diǎn)數(shù)必須用科學(xué)記數(shù)法,把十用e替代,2.34*10^9就是2.34e9或23.4e8.整數(shù)和浮點(diǎn)數(shù)在計(jì)算機(jī)內(nèi)部存儲(chǔ)方式不同,整數(shù)運(yùn)算永遠(yuǎn)精確,而浮點(diǎn)數(shù)運(yùn)算可能有四舍五入的誤差。

③復(fù)數(shù)(complex):復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成,可以用 a + bj,或者 complex(a,b) 表示, 復(fù)數(shù)的實(shí)部 a 和虛部 b 都是浮點(diǎn)型。

④字符串(string)是以單引號(hào)' '或雙引號(hào)" "括起來的數(shù)字、字母、下劃線組成的任意文本。

python的字串列表有2種取值順序:一種是從左到右索引默認(rèn)0開始的,最大范圍是字符串長(zhǎng)度少1;另一種是從右到左索引默認(rèn)-1開始的,最大范圍是字符串開頭。

從字符串中獲取一段子字符串,可以使用變量?[頭下標(biāo):尾下標(biāo)]截取相應(yīng)的字符串,其中下標(biāo)是從 0 開始算起,可以是正數(shù)或負(fù)數(shù),下標(biāo)可以為空表示取到頭或尾;當(dāng)使用以冒號(hào)分隔的字符串,python返回一個(gè)新的對(duì)象,結(jié)果包含了以這對(duì)偏移標(biāo)識(shí)的連續(xù)的內(nèi)容,左邊的開始包含下邊界,但取到的最大范圍不包括上邊界;加號(hào)(+)是字符串連接運(yùn)算符,星號(hào)(*)是重復(fù)操作

看個(gè)例子都明白了:

截取各類子字符串

【轉(zhuǎn)義字符\可以轉(zhuǎn)義許多字符,比如\n表示轉(zhuǎn)行,\t表示制表符,字符\本身也要轉(zhuǎn)義,所以\\表示的字符就是\。

若字符串里面有很多字符都需要字符都需要轉(zhuǎn)義,就需要加很多\。為了簡(jiǎn)化,Python允許用r' '表示' '內(nèi)部的字符串默認(rèn)不轉(zhuǎn)義。

如果字符串內(nèi)部有很多換行,Pyhon允許用'''(前后三個(gè)單引號(hào))的格式表示多行內(nèi)容】

⑤布爾值(bool):只有True和False兩種值(注意大小寫),可以用and、or和not運(yùn)算,常用在條件判斷中。

⑥空值(None):是Python里面一個(gè)特殊的值,不能理解為0,因?yàn)?是有意義的,而None是一個(gè)特殊的空值。

⑦列表(list)用?[ ]?標(biāo)識(shí),可以完成大多數(shù)集合類的復(fù)合數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),支持字符,數(shù)字,字符串甚至可以包含列表(即嵌套)。

類似截取子字符串,用變量?[頭下標(biāo):尾下標(biāo)] 就可以截取相應(yīng)的列表,從左到右索引默認(rèn) 0 開始,從右到左索引默認(rèn) -1 開始,下標(biāo)可以為空表示取到頭或尾;加號(hào)?+?是列表連接運(yùn)算符,星號(hào)?*?是重復(fù)操作

截取各類子列表

⑧元組(tuple):用()標(biāo)識(shí),內(nèi)部元素用逗號(hào)隔開。

?截取各類子元組

注意?。。。?b>元組是不允許更新的。而列表是允許更新的。就是說元組不能二次賦值,相當(dāng)于只讀列表。看下面:

錯(cuò)錯(cuò)錯(cuò),是元組的錯(cuò)

⑨字典(dictionary):用"{ }"標(biāo)識(shí),由索引(key)和它對(duì)應(yīng)的值value組成。除列表以外python之中最靈活的內(nèi)置數(shù)據(jù)結(jié)構(gòu)類型。列表是有序的對(duì)象集合,字典是無序的對(duì)象集合。兩者之間的區(qū)別在于:字典當(dāng)中的元素是通過鍵來存取的,而不是通過偏移存取。

定義: d = ["key1":value1, "key2":value2] ? ?一個(gè)key只能對(duì)應(yīng)一個(gè)value 。如果key不存在,就會(huì)報(bào)錯(cuò) ,可以通過 key in dict 來判斷dict中是否有這個(gè)key ,要?jiǎng)h除一個(gè)key,可以用pop(key)來刪除,相對(duì)應(yīng)的value也會(huì)被刪除 ,dict內(nèi)部存放的順序和key放入的順序是沒有關(guān)系的

和list比較,dict有以下幾個(gè)特點(diǎn):查找和插入的速度極快,不會(huì)隨著key的增加而增加;需要占用大量的內(nèi)存,內(nèi)存浪費(fèi)多。而list相反:查找和插入的時(shí)間隨著元素的增加而增加;占用空間小,浪費(fèi)內(nèi)存很少。 所以,dict是用空間來換取時(shí)間的一種方法。

存取字典元素

⑩集合(set)

和dict類似,也是一組key的集合,但不存儲(chǔ)value。由于key不能重復(fù),所以,在set中,沒有重復(fù)的key。要創(chuàng)建一個(gè)set,需要提供一個(gè)list作為輸入集合.

set可以看成數(shù)學(xué)意義上的無序和無重復(fù)元素的集合,因此,兩個(gè)set可以做數(shù)學(xué)意義上的交集( & )、并集( | )等操作。通過add(key)方法可以添加元素到set中,可以重復(fù)添加,但不會(huì)有效果;通過remove(key)方法可以刪除元素?

此外,還允許數(shù)據(jù)類型轉(zhuǎn)換、創(chuàng)建自定義數(shù)據(jù)類型等等,待補(bǔ)充。

3)變量和常量

①變量

變量在程序中用一個(gè)變量名表示,變量名必須是英文、數(shù)字和_的組合,且不能以數(shù)字開頭。

Python 中的變量賦值不需要類型聲明,但每個(gè)變量在使用前都必須賦值,變量賦值以后該變量才會(huì)被創(chuàng)建,每個(gè)變量在內(nèi)存中創(chuàng)建,都包括變量的標(biāo)識(shí),名稱和數(shù)據(jù)這些信息。等號(hào)(=)就用來給變量賦值,左邊是一個(gè)變量名,等號(hào)(=)運(yùn)算符右邊是存儲(chǔ)在變量中的值。

Python允許多個(gè)變量同時(shí)賦值。如a = b = c = 1就創(chuàng)建了一個(gè)值為1的整型對(duì)象,三個(gè)變量被分配到相同的內(nèi)存空間上(一個(gè)對(duì)象指定多個(gè)變量);又如:a, b, c = 1, 2, "john"將兩個(gè)整型對(duì)象1和2的分配給變量 a 和 b,字符串對(duì)象 "john" 分配給變量 c(多個(gè)對(duì)象指定多個(gè)變量)。

常量

Python中常用全部大寫的變量名表示常量,如PI(圓周率)

4) 運(yùn)算符

Python語言支持以下類型的運(yùn)算符:

①算術(shù)運(yùn)算符:加(+)減(-)乘(*)除(/)取模(%)取整除(//)冪(**)

【取模 - 返回除法的余數(shù);冪 - 返回x的y次冪;取整除 - 返回商的整數(shù)部分】注意:Python2.x 里,整數(shù)除整數(shù),只能得出整數(shù)。如果要得到小數(shù)部分,把其中一個(gè)數(shù)改成浮點(diǎn)數(shù)即可。

②比較運(yùn)算符:等于(==)不等于(!=)不等于(<>)大于(>)小于(<)大于等于(>=)小于等于(<=)

③賦值運(yùn)算符

賦值運(yùn)算符

④位運(yùn)算符:&(按位與) |(按位或) ^(按位異或) ~(按位取反) <<(左移動(dòng)運(yùn)算符) >>(右移動(dòng)運(yùn)算符)

⑤邏輯運(yùn)算符:and(與)or(或)not(非)

⑥成員運(yùn)算符:in(x 在 y 序列中 , 如果 x 在 y 序列中返回 True);not in(在指定的序列中沒有找到值返回 True,否則返回 False)

⑦身份運(yùn)算符:is(x is y, 類似?id(x) == id(y)?, 如果這兩個(gè)標(biāo)識(shí)符引用的是同一個(gè)對(duì)象則返回 True,否則返回 False);is not (x is not y?, 類似?id(a) != id(b)。如果引用的不是同一個(gè)對(duì)象則返回結(jié)果 True,否則返回 False)

⑧運(yùn)算符優(yōu)先級(jí)

從高到低

【4】下載與資料

1)最新源碼,二進(jìn)制文檔,新聞資訊可以在Python官網(wǎng)看到:http://www.python.org/

2)Python文檔(支持HTML、PDF、PostScript等格式)下載地址:www.python.org/doc/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容