-
continue 跳過(guò)字符
查看全部 -
用break跳出循環(huán)
while True:
? ? if num > 100:
? ? ? ? breakfor ch in s:
? ? if num > 20:
? ? ? ? break
? ? print(ch)
? ? num = num + 1
查看全部 -
短路計(jì)算
在計(jì)算a and b時(shí),如果 a 是 False,則根據(jù)與運(yùn)算法則,整個(gè)結(jié)果必定為 False,因此返回 a;如果 a 是 True,則整個(gè)計(jì)算結(jié)果必定取決與 b,因此返回 b。
在計(jì)算a or b時(shí),如果 a 是 True,則根據(jù)或運(yùn)算法則,整個(gè)計(jì)算結(jié)果必定為 True,因此返回 a;如果 a 是 False,則整個(gè)計(jì)算結(jié)果必定取決于 b,因此返回 b。
所以Python解釋器在做布爾運(yùn)算時(shí),只要能提前確定計(jì)算結(jié)果,它就不會(huì)往后算了,直接返回結(jié)果。
查看全部 -
Python的布爾類型
前面我們了解到,布爾類型是Python的基礎(chǔ)數(shù)據(jù)類型,布爾類型只有True和False兩種值,本節(jié)課我們學(xué)習(xí)布爾類型的集中運(yùn)算。
與運(yùn)算
只有兩個(gè)布爾值都為 True 時(shí),計(jì)算結(jié)果才為 True。
True and True # ==> True True and False # ==> False False and True # ==> False False and False # ==> False
或運(yùn)算
只要有一個(gè)布爾值為 True,計(jì)算結(jié)果就是 True。
True or True # ==> True True or False # ==> True False or True # ==> True False or False # ==> False
非運(yùn)算
把True變?yōu)镕alse,或者把False變?yōu)門rue:
not True # ==> False not False # ==> True
這些運(yùn)算有什么用呢?計(jì)算機(jī)程序是由無(wú)數(shù)的邏輯分支組成的,通過(guò)布爾運(yùn)算,可以在計(jì)算機(jī)中實(shí)現(xiàn)條件判斷,根據(jù)計(jì)算結(jié)果為True或者False,計(jì)算機(jī)可以自動(dòng)執(zhí)行不同的后續(xù)代碼,因此學(xué)習(xí)布爾運(yùn)算也是非常有必要的。
查看全部 -
在Python中,布爾類型還可以與其他數(shù)據(jù)類型(字符串,數(shù)字等)做 and、or和not運(yùn)算,請(qǐng)看下面的代碼:
a = True
print(a and 0 or 99) # ==> 99得到的計(jì)算結(jié)果不是布爾類型,而是數(shù)字99,這是為什么呢?
因?yàn)镻ython把0、空字符串和None看成False,其他數(shù)值和非空字符串都看成True,所以:
True and 0計(jì)算結(jié)果是0?
繼續(xù)計(jì)算0 or 99計(jì)算結(jié)果是 99?
因此,結(jié)果是99。需要注意的是,not計(jì)算的優(yōu)先級(jí)是高于and和or的。
True and not False # ==> True
在上述布爾計(jì)算中,先計(jì)算not False = True,然后再計(jì)算True and True,因此得到True的結(jié)果。
查看全部 -
for ch in s:
ch是在for循環(huán)中定義的,意思是把字符串s中的每一個(gè)元素依次賦值給ch,然后再把ch打印出來(lái),直到打印出字符串s的最后一個(gè)字符為止。
注意縮進(jìn)
查看全部 -
elif就是else if的意思。
特別注意: 這一系列條件判斷會(huì)從上到下依次判斷,如果某個(gè)判斷為 True,執(zhí)行完對(duì)應(yīng)的代碼塊,后面的條件判斷就直接忽略,不再執(zhí)行了。
查看全部 -
注意:1.冒號(hào):,在else中,同樣需要冒號(hào);
2.縮進(jìn),在else的子邏輯分支,同樣需要縮進(jìn)。
查看全部 -
if子分支需要縮進(jìn)4個(gè)空格
在if語(yǔ)句的最后,有一個(gè)冒號(hào):,這是條件分支判斷的格式,在最后加入冒號(hào):,表示接下來(lái)是分支代碼塊
查看全部 -
注意:在程序的世界中,計(jì)數(shù)是從0開始的,使用0來(lái)表示第一個(gè)。
按照位置取字符串的方式使用中括號(hào)[]訪問(wèn)。
采取切片的方式獲取,切片需要在中括號(hào)[]中填入兩個(gè)數(shù)字,中間用冒號(hào)分開,表示子串的開始位置和結(jié)束位置,并且這是半閉半開區(qū)間,不包括最后的位置。(ab = s[0:2] # 取字符串s中的第一個(gè)字符到第三個(gè)字符,不包括第三個(gè)字符)
#-*- coding:utf-8 -*-
查看全部 -
format來(lái)處理字符串,輸出不固定的內(nèi)容。
字符串format由兩個(gè)部分組成,字符串模板和模板數(shù)據(jù)內(nèi)容組成,通過(guò)大括號(hào){},就可以把模板數(shù)據(jù)內(nèi)容嵌到字符串模板對(duì)應(yīng)的位置。可以指定模板數(shù)據(jù)內(nèi)容的順序。還可以指定對(duì)應(yīng)名字。
查看全部 -
字符串format
template='Life is {0},you need {1}'
result=template.format('short','Python')
print(result)
template='Life is {w},you nend {p}'
str1='short'
str2='Python'
result=template.format(w=str1,p=str2)
print(result)
print('Life is short, you need {}'.format('Python'))
print('Life is short, you need {launguage}'.format( launguage = 'Python'))查看全部 -
同學(xué)的近三次成績(jī)?nèi)缦?,?qǐng)把每個(gè)同學(xué)的每次成績(jī)依次輸出。
d = {'Alice': [50, 61, 66], 'Bob': [80, 61, 66], 'Candy': [88, 75, 90]}
for key,value in d.items():
? ?
for key,value in d.items():
? ? for a in value:
? ? ? ? print(key,a)
查看全部 -
Alice、Bob、Candy的最近三次的成績(jī)分別是[50, 61, 66],[80, 61, 66],[88, 75, 90],請(qǐng)更新dict,使得dict可以保存同學(xué)多次的成績(jī)
d = {
? ? 'Alice': [45],
? ? 'Bob': [60],
? ? 'Candy': [75],
}
list1=[50,61,66]
for a in list1:
? ? d['Alice'].append(a)
print(d)
查看全部 -
表示多行字符串,可以用'''...'''表示
如果一個(gè)字符串包含很多需要轉(zhuǎn)義的字符,對(duì)每一個(gè)字符都進(jìn)行轉(zhuǎn)義會(huì)很麻煩。為了避免這種情況,我們可以在字符串前面加個(gè)前綴r,表示這是一個(gè)?raw?字符串,里面的字符就不需要轉(zhuǎn)義了
查看全部
舉報(bào)