最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

跟老齊學(xué)Python之正規(guī)地說一句話

 更新時(shí)間:2014年09月28日 16:02:11   投稿:hebedich  
雖然在第一部分中,已經(jīng)零星涉及到語句問題,并且在不同場合也進(jìn)行了一些應(yīng)用。畢竟不那么系統(tǒng)。本部分,就比較系統(tǒng)地介紹python中的語句。

小孩子剛剛開始學(xué)說話的時(shí)候,常常是一個字一個字地開始學(xué),比如學(xué)說“餃子”,對他/她來講,似乎有點(diǎn)難度,大人也聰明,于是就簡化了,用“餃餃”來代替,其實(shí)就是讓孩子學(xué)會一個字就能表達(dá)。當(dāng)然,從教育學(xué)的角度,有人不贊成這種方法。這個此處不討論了。如果對比學(xué)習(xí)編程,就好像是前面已經(jīng)學(xué)習(xí)過的那些各種類型的數(shù)據(jù)(對應(yīng)這自然語言中的單個字、詞),要表達(dá)一個完整的意思,或者讓計(jì)算機(jī)完成一個事情(動作),不得不通過一句話,這句話就是語句,它是按照一定規(guī)則組織起來的。自然語言中的一句話,按照主謂賓的語法方式組織,計(jì)算機(jī)編程中的語句,也是按照一定的語法要求進(jìn)行組織。

雖然在第一部分中,已經(jīng)零星涉及到語句問題,并且在不同場合也進(jìn)行了一些應(yīng)用。畢竟不那么系統(tǒng)。本部分,就比較系統(tǒng)地介紹python中的語句。

為了有總括的印象,先看看python中都包括哪些語句:

賦值語句

if語句,當(dāng)條件成立時(shí)運(yùn)行語句塊。經(jīng)常與else, elif(相當(dāng)于else if)配合使用。
for語句,遍列列表、字符串、字典、集合等迭代器,依次處理迭代器中的每個元素。
while語句,當(dāng)條件為真時(shí),循環(huán)運(yùn)行語句塊。
try語句。與except, finally, else配合使用處理在程序運(yùn)行中出現(xiàn)的異常情況。
class語句。用于定義類型。
def語句。用于定義函數(shù)和類型的方法。
pass語句。表示此行為空,不運(yùn)行任何操作。
assert語句。用于程序調(diào)適階段時(shí)測試運(yùn)行條件是否滿足。
with語句。Python2.6以后定義的語法,在一個場景中運(yùn)行語句塊。比如,運(yùn)行語句塊前加鎖,然后在語句塊運(yùn)行退出后釋放鎖。
yield語句。在迭代器函數(shù)內(nèi)使用,用于返回一個元素。
raise語句。拋出一個異常。
import語句。導(dǎo)入一個模塊或包。常用寫法:from module import name, import module as name, from module import name as anothername
特別說明,以上劃分也不是很嚴(yán)格,有的內(nèi)容,有的朋友不認(rèn)為屬于語句。這沒關(guān)系,反正就是那個東西,在編程中使用。不糾結(jié)于名詞歸類上??傊@些都是要掌握的,才能順利編程呢。

再談賦值語句

還記得賦值,簡單也不簡單那一講中所提到的賦值語句嗎?既然談?wù)Z句,就應(yīng)該從這個開始,一方面復(fù)習(xí),另外一方面,希望能夠深點(diǎn),深點(diǎn)的感覺總是很好的(我說的是理解python,思無邪。前面有一個關(guān)于list的內(nèi)容:再深點(diǎn),更懂list,就有喜歡看玩笑的看官思邪了。哈哈。)

復(fù)制代碼 代碼如下:

>>> qiwsir = 1
>>> python = 2
>>> x, y = qiwsir, python   #相當(dāng)于x=qiwsir,y=python
>>> x
1
>>> y
2
>>> x, y                    #輸出的是tuple
(1, 2)
>>> [x, y]                  #這就是一個list
[1, 2]

>>> [a, b] = [qiwsir, python]
>>> a
1
>>> b
2
>>> a, b
(1, 2)
>>> [a, b]
[1, 2]

換一種方式,以上兩種賦值方法交叉組合一下:

復(fù)制代碼 代碼如下:

>>> [c, d] = qiwsir, python
>>> c
1
>>> d
2
>>> c, d
(1, 2)
>>> f, g = [qiwsir, python]
>>> f
1
>>> g
2
>>> f, g
(1, 2)

居然也行。其實(shí),從這里我們就看出來了,賦值,就是對應(yīng)著將左邊的變量和右邊的對象關(guān)聯(lián)起來。

有這樣一個有趣的問題,如果a=3,b=4,想把這兩個變量的值調(diào)換一下,也就是a=4,b=3。在有的高級語言中,是要先引入另外一個變量c做為中間中專,就是這樣:

復(fù)制代碼 代碼如下:

a = 3
b = 4
c = a   #即c=3
a = b   #a=4
b = c   #b=3

初學(xué)者可能有點(diǎn)糊涂。就是我和你兩只手都托著一個箱子,現(xiàn)在我們兩個要換一下箱子,但是兩個手都被占用了,無法換(當(dāng)然,要求箱子不能落地,也不要放在桌子上之類的)。于是再找一個名曰張三的人來,他空著兩只手,那么我先把箱子給張三,我就空出來了,然后接你的箱子,你的箱子就到我手里了。我的那個箱子現(xiàn)在張三手里呢,你接過來,于是我們兩個就換了箱子了。

只所以這么啰嗦,就是因?yàn)槲覀儍蓚€沒有更多的手。但是,這不是python,python有更多的手。她可以這樣:

復(fù)制代碼 代碼如下:

>>> qiwsir = 100
>>> python = 200
>>> qiwsir, python = python, qiwsir
>>> qiwsir
200
>>> python
100

有點(diǎn)神奇,python是三頭六臂的。

序列賦值

其實(shí)上面實(shí)驗(yàn)的賦值,本質(zhì)上就是序列賦值。只不過這里再強(qiáng)化一番罷了。如果左邊的變量是序列,右邊的對象也是序列,兩者將一一對應(yīng)地進(jìn)行賦值。

復(fù)制代碼 代碼如下:

>>> [a, b, c] = (1, 2, 3)   #左右序列一一對應(yīng),左邊是變量,右邊是對象
>>> a
1
>>> b
2
>>> c
3
>>> (a,b,c) = [1,2,3]
>>> a
1
>>> b
2
>>> c
3
>>> [a,b,c] = "qiw"     #不要忘記了,str也是序列類型的數(shù)據(jù)
>>> a
'q'
>>> b
'i'
>>> c
'w'
>>> (a,b,c) = "qiw"
>>> a,c
('q', 'w')
>>> a,b,c = 'qiw'       #與前面等價(jià)
>>> a,b
('q', 'i')
>>> a,b = 'qiw'         #報(bào)錯了,因?yàn)樽筮吅陀疫叢皇且灰粚?yīng)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: too many values to unpack

>>> (a,b),c = "qi","wei"    #注意觀察,這樣的像是是如何對應(yīng)的
>>> a,b,c
('q', 'i', 'wei')
>>> string = "qiwsir"
>>> a,b,c = string[0],string[1],string[2]   #取切片也一樣
>>> a,b,c
('q', 'i', 'w')
>>> (a,b),c = string[:2],string[2:]
>>> a,b,c
('q', 'i', 'wsir')

從實(shí)驗(yàn)中,可以看出,要搞清楚這種眼花繚亂的賦值,就僅僅扣住“一一對應(yīng)”這個命脈即可。

如果看官用python3,在賦值上還有更多有意思的東西呢。不過,本講座用的還是python2。

相關(guān)文章

  • Python中流程控制的高級用法盤點(diǎn)

    Python中流程控制的高級用法盤點(diǎn)

    在這篇文章中我們將全面深入地介紹?Python?的控制流程,包括條件語句、循環(huán)結(jié)構(gòu)和異常處理等關(guān)鍵部分,尤其會將列表解析、生成器、裝飾器等高級用法一網(wǎng)打盡,快跟隨小編學(xué)起來吧
    2023-05-05
  • Python制作動態(tài)字符畫的源碼

    Python制作動態(tài)字符畫的源碼

    python字符畫是一個簡單有趣的圖畫,它一般由程序制作而成,接下來通過本文給大家分享Python制作動態(tài)字符畫的源碼,需要的朋友可以參考下
    2021-08-08
  • python和JavaScript哪個容易上手

    python和JavaScript哪個容易上手

    在本篇文章里小編給大家分享的是一篇關(guān)于python和JavaScript哪個容易上手的相關(guān)知識點(diǎn)文章,有興趣的朋友們可以學(xué)習(xí)下。
    2020-06-06
  • python實(shí)現(xiàn)一個簡單的貪吃蛇游戲附代碼

    python實(shí)現(xiàn)一個簡單的貪吃蛇游戲附代碼

    這篇文章主要介紹了python實(shí)現(xiàn)一個簡單的貪吃蛇游戲附代碼,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-06-06
  • Python父目錄、子目錄的相互調(diào)用方法

    Python父目錄、子目錄的相互調(diào)用方法

    今天小編就為大家分享一篇Python父目錄、子目錄的相互調(diào)用方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • 基于Django框架的權(quán)限組件rbac實(shí)例講解

    基于Django框架的權(quán)限組件rbac實(shí)例講解

    今天小編就為大家分享一篇基于Django框架的權(quán)限組件rbac實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python django框架輸入漢字,數(shù)字,字符生成二維碼實(shí)現(xiàn)詳解

    Python django框架輸入漢字,數(shù)字,字符生成二維碼實(shí)現(xiàn)詳解

    這篇文章主要介紹了Python django框架輸入漢字,數(shù)字,字符轉(zhuǎn)成二維碼實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • matplotlib繪制動畫代碼示例

    matplotlib繪制動畫代碼示例

    這篇文章主要介紹了matplotlib繪制動畫代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • Python 微信之獲取好友昵稱并制作wordcloud的實(shí)例

    Python 微信之獲取好友昵稱并制作wordcloud的實(shí)例

    今天小編就為大家分享一篇Python 微信之獲取好友昵稱并制作wordcloud的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • Python正則表達(dá)式的應(yīng)用詳解

    Python正則表達(dá)式的應(yīng)用詳解

    這篇文章主要介紹了Python中正則表達(dá)式的詳細(xì)教程,正則表達(dá)式是Python學(xué)習(xí)進(jìn)階當(dāng)中的重要內(nèi)容,需要的朋友可以參考下,希望能給你帶來幫助
    2021-08-08

最新評論

永丰县| 镇宁| 夏邑县| 长丰县| 禹城市| 敦化市| 渝中区| 秦皇岛市| 普陀区| 吴旗县| 江孜县| 葫芦岛市| 栾川县| 江津市| 浪卡子县| 怀化市| 扎囊县| 印江| 阳高县| 乐亭县| 舟山市| 章丘市| 夹江县| 浠水县| 七台河市| 利川市| 虹口区| 彭水| 林芝县| 永胜县| 永春县| 乌拉特后旗| 泰来县| 突泉县| 安西县| 武冈市| 黑龙江省| 尉犁县| 赣榆县| 泾阳县| 游戏|