自學(xué)Python基礎(chǔ)知識匯總-第二節(jié)

Python基礎(chǔ)04 運(yùn)算
數(shù)學(xué)運(yùn)算
>>>print 1+9 # 加法
>>>print 1.3-4 # 減法
>>>print 3*5 # 乘法
>>>print 4.5/1.5 # 除法
>>>print 3**2 # 乘方
>>>print 10%3 # 求余數(shù)
判斷
判斷是真還是假,返回True/False
>>>print 5==6 # =, 相等
>>>print 8.0!=8.0 # !=, 不等
>>>print 3<3, 3<=3 # <, 小于; <=, 小于等于
>>>print 4>5, 4>=0 # >, 大于; >=, 大于等于
>>>print 5 in [1,3,5] # 5是list [1,3,5]的一個元素
(還有is, is not等, 暫時不深入)
邏輯運(yùn)算
True/False之間的運(yùn)算
>>>print True and True, True and False # and, “與”運(yùn)算, 兩者都為真才是真
>>>print True or False # or, "或"運(yùn)算, 其中之一為真即為真
>>>print not True # not, “非”運(yùn)算, 取反
可以和上一部分結(jié)合做一些練習(xí),比如:
>>>print 5==6 or 3>=3
數(shù)學(xué) +, -, *, /, **, %
判斷 ==, !=, >, >=, <, <=, in
邏輯 and, or, not
Python基礎(chǔ)05 縮進(jìn)和選擇
縮進(jìn)
Python最具特色的是用縮進(jìn)來標(biāo)明成塊的代碼。我下面以if選擇結(jié)構(gòu)來舉例。if后面跟隨條件,如果條件成立,則執(zhí)行歸屬于if的一個代碼塊。
先看C語言的表達(dá)方式(注意,這是C,不是Python!)

如果i > 0的話,我們將進(jìn)行括號中所包括的兩個賦值操作。括號中包含的就是塊操作,它隸屬于if。
在Python中,同樣的目的,這段話是這樣的

在Python中, 去掉了i > 0周圍的括號,去除了每個語句句尾的分號,表示塊的花括號也消失了。
多出來了if ...之后的:(冒號), 還有就是x = 1 和 y =2前面有四個空格的縮進(jìn)。通過縮進(jìn),Python識別出這兩個語句是隸屬于if。
Python這樣設(shè)計(jì)的理由純粹是為了程序好看。
if語句
寫一個完整的程序,命名為ifDemo.py。這個程序用于實(shí)現(xiàn)if結(jié)構(gòu)。

$python ifDemo.py # 運(yùn)行
程序運(yùn)行到if的時候,條件為True,因此執(zhí)行x = x+1,。
print x語句沒有縮進(jìn),那么就是if之外。
如果將第一句改成i = -1,那么if遇到假值 (False), x = x+1隸屬于if, 這一句跳過。print x沒有縮進(jìn),是if之外,不跳過,繼續(xù)執(zhí)行。
這種以四個空格的縮進(jìn)來表示隸屬關(guān)系的書寫方式,以后還會看到。強(qiáng)制縮進(jìn)增強(qiáng)了程序的可讀性。
復(fù)雜一些的if選擇:

這里有三個塊,分別屬于if, elif, else引領(lǐng)。
Python檢測條件,如果發(fā)現(xiàn)if的條件為假,那么跳過后面緊跟的塊,檢測下一個elif的條件;如果還是假,那么執(zhí)行else塊。
通過上面的結(jié)構(gòu)將程序分出三個分支。程序根據(jù)條件,只執(zhí)行三個分支中的一個。
整個if可以放在另一個if語句中,也就是if結(jié)構(gòu)的嵌套使用:

if i > 2 后面的塊相對于該if縮進(jìn)了四個空格,以表明其隸屬于該if,而不是外層的if。
if語句之后的冒號
以四個空格的縮進(jìn)來表示隸屬關(guān)系, Python中不能隨意縮進(jìn)
if <條件1>:
statement
elif <條件2>:
statement
elif <條件3>:
statement
else:
statement


一碼不掃,
可以掃天下?

