五某饰、運算符和流程控制

一、運算符
In [2]: 1+1                                                                           
Out[2]: 2

In [3]: 2-1                                                                           
Out[3]: 1

In [4]: 3*3                                                                           
Out[4]: 9

In [5]: 4/2                                                                           
Out[5]: 2.0

In [6]: 4//2                                                                          
Out[6]: 2

In [7]: 5%3                                                                           
Out[7]: 2

In [8]: 2**3                                                                   
Out[8]: 8
In [10]: n=5                                                                          

In [11]: n+=2                                                                         

In [12]: n                                                                            
Out[12]: 7

In [13]: n+=2                                                                         

In [14]: n                                                                            
Out[14]: 9

二善绎、判斷值

運算符 <, >, ==, >=, <= 和 != 將比較兩個對象的值黔漂。 兩個對象不要求為相同類型。

==          等于
!=          不等于
>           大于
<           小于
>=          大于等于
<=          小于等于

三禀酱、邏輯判斷和成員判斷

and         與
or          或
not         非
in          屬于(成員判斷)a in li

運算符 not 將在其后跟的 參數(shù) 為假值時產(chǎn)生 True炬守,否則產(chǎn)生 False

表達(dá)式 x and y 首先對 x 求值剂跟;如果 x 為假則返回 該值减途;否則對 y 求值并返回 其結(jié)果值酣藻。

表達(dá)式 x or y 首先對 x 求值;如果 x 則返回該 鳍置;否則對 y 求值并返回其 結(jié)果值辽剧。

請注意 andor 都不限制其返回的值和類型必須為 FalseTrue,而是返回最終求值的參數(shù)税产。 此行為是有必要的怕轿,例如假設(shè) s 為一個當(dāng)其為空時應(yīng)被替換為某個默認(rèn)值的字符串,表達(dá)式 s or 'foo' 將產(chǎn)生希望的值辟拷。 由于 not 必須創(chuàng)建一個新值撞羽,不論其參數(shù)為何種類型它都會返回一個布爾值(例如,not 'foo' 結(jié)果為 False 而非 ''衫冻。)

四放吩、一切都是假象

在執(zhí)行布爾運算的情況下,或是當(dāng)表達(dá)式被用于流程控制語句時羽杰,以下值會被解析為假值: False, None, 所有類型的數(shù)字零渡紫,以及空字符串和空容器(包括字符串、元組考赛、列表惕澎、字典、集合與凍結(jié)集合)颜骤。

所有其他值都會被解析為真值唧喉。

數(shù)據(jù)類型             代碼表現(xiàn)形式
布爾                   False
null類型               None
整形                   0
浮點型                 0.0
控字符串                ''
空列表                 []
空元組                 ()
空字典                 {}
空集合                 set()

五、鏈?zhǔn)脚袛?/p>

10>n>3

條件表達(dá)式
條件表達(dá)式(有時稱為“三元運算符”)在所有 Python 運算中具有最低的優(yōu)先級忍抽。

表達(dá)式 x if C else y 首先是對條件 C 進(jìn)行求值八孝。 如果 C 為真,x 將被求值并返回其值鸠项;否則將對 y 求值并返回其值干跛。

[on_true] if [expression] else [on_false]

x, y = 50, 25
small = x if x < y else y  //如果x<y就x為真,否則y

流程控制語句

判斷

基本語法格式:

if 條件語句:   # 注意這里必須以英文的冒號結(jié)束
    條件語句為真時祟绊,執(zhí)行的語句
-----------------------------------------------------
n = input("輸入數(shù)字>>:")
n = int(n)    # input 接收到的數(shù)據(jù)楼入,都是字符串類型
if n == 5:
    print('相等')
=====================================================
n = input("輸入數(shù)字>>:")
n = int(n)
if n == 5:
    print('相等')
else:               # else 后邊必須有英文的冒號
    print('No')
=====================================================
n = input("輸入數(shù)字>>:")
# 必須輸入數(shù)字來測試
n = int(n)

if n == 5:
    print('ok')
elif n > 5:
    print('大了')
else:
    print('小了')
嵌套

n.isdigit() 用于判斷 n 的值是否全部都是純數(shù)字, 
全部是數(shù)字才能使用 int()  轉(zhuǎn)換, 比如: int("123")  可以轉(zhuǎn)成 123

if n.isdigit():
    f_n = int(n)
    if f_n == 5:
        print('ok')
    elif f_n > 5:
        print('大了')
    else:
        print('小了')
else:
    print('請輸入數(shù)字')
循環(huán)
while True:
    n = input("輸入數(shù)字>>:")
    n = int(n)
    if n == 5:
        print('相等')
        break
    elif n > 5:
        print('大了')
    else:
        print('小了')
上面的小游戲牧抽,只能玩 3 次
m = 1

while m <= 3:
    m += 1
    n = input("輸入數(shù)字>>:")
    n = int(n)
    if n == 5:
        print('相等')
        break
    elif n > 5:
        print('大了')
    else:
        print('小了')

迭代

  • 什么是迭代

迭代 是重復(fù)反饋過程的活動嘉熊,其目的通常是為了接近并到達(dá)所需的目標(biāo)或結(jié)果。

  每一次對過程的重復(fù)被稱為一次“迭代”扬舒。
  • for 循環(huán)(英語:for loop)

    是一種編程語言的迭代陳述阐肤,能夠讓程式碼反復(fù)的執(zhí)行。

    它跟其他的循環(huán)讲坎,如while循環(huán)孕惜,最大的不同愧薛,是它擁有一個循環(huán)計數(shù)器。

    這使得for循環(huán)能夠知道在迭代過程中的執(zhí)行順序,記住上次被循環(huán)元素的位置诊赊。

    In [15]: for i in 'hello world': 
        ...:         print(i) 
        ...:                                                                              
    h
    e
    l
    l
    o
     
    w
    o
    r
    l
    d

break continue

for i in range(0, 10):
    print(i)
    if i < 3:
        inp_num = int(input(">>:").strip())
        # inp_num = int(inp_num)
        if inp_num == 15:
            print('You get it')
            break
        elif inp_num > 15:
            print("高了")
        else:
            print("低了")
    else:
        print("Game over")
        break
================================
for i in range(2, 10, 2):
    print("循環(huán)到", i)
    if i == 4:
        continue
    print(i)
    if i == 6:
        break

range(n)
產(chǎn)生一個可被循環(huán)的整數(shù)序列,默認(rèn)序列的元素從 0 開始

產(chǎn)生的元素數(shù)量是 n 個

range(開始索引號:結(jié)束索引號:步長)

In [16]: for i in range(2): 
    ...:         print(i) 
    ...:                                                                              
0
1

指定開始位置的數(shù)字和結(jié)束位置的數(shù)字府瞄, 輸出的值中不包含結(jié)束位置的數(shù)字碧磅。

這個 位置 指的就是 索引號的意思

In [17]: for i in range(1, 3): 
    ...:         print(i) 
    ...:                                                                              
1
2
In [20]: for i in range(0, 3): 
    ...:     print(i) 
    ...:                                                                              
0
1
2

for … else

?1. 當(dāng) for 循環(huán)體正常執(zhí)行完畢時,再執(zhí)行一下 else 后面的代碼

?2. 當(dāng) 執(zhí)行了 break 后遵馆,就不再執(zhí)行 else 后面的代碼了

for i in range(20):
    if i == 10:
        print('get it')
        n = i
        break
else:
    print("Nothing")
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鲸郊,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子货邓,更是在濱河造成了極大的恐慌秆撮,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件换况,死亡現(xiàn)場離奇詭異职辨,居然都是意外死亡,警方通過查閱死者的電腦和手機戈二,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進(jìn)店門舒裤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人觉吭,你說我怎么就攤上這事腾供。” “怎么了鲜滩?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵伴鳖,是天一觀的道長。 經(jīng)常有香客問我徙硅,道長榜聂,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任嗓蘑,我火速辦了婚禮峻汉,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘脐往。我一直安慰自己休吠,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布业簿。 她就那樣靜靜地躺著瘤礁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪梅尤。 梳的紋絲不亂的頭發(fā)上柜思,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天岩调,我揣著相機與錄音,去河邊找鬼赡盘。 笑死号枕,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的陨享。 我是一名探鬼主播葱淳,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼抛姑!你這毒婦竟也來了赞厕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤定硝,失蹤者是張志新(化名)和其女友劉穎皿桑,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蔬啡,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡诲侮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了箱蟆。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片浆西。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖顽腾,靈堂內(nèi)的尸體忽然破棺而出近零,到底是詐尸還是另有隱情,我是刑警寧澤抄肖,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布久信,位于F島的核電站,受9級特大地震影響漓摩,放射性物質(zhì)發(fā)生泄漏裙士。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一管毙、第九天 我趴在偏房一處隱蔽的房頂上張望腿椎。 院中可真熱鬧,春花似錦夭咬、人聲如沸啃炸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽南用。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間裹虫,已是汗流浹背肿嘲。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留筑公,地道東北人雳窟。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像匣屡,于是被迫代替她去往敵國和親封救。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,941評論 2 355

推薦閱讀更多精彩內(nèi)容