Python科學(xué)計算與數(shù)據(jù)處理6:控制與循環(huán)

python_loop.png

控制語句

if...else...

可以單獨使用if語句低千,例如:

password = raw_input('Enter password:')
if password == 'MI6':
    print 'Welcome!'
Enter password:MI6
Welcome!

也可以將ifelse配合使用漱牵。

password = raw_input('Enter password:')
if password == 'MI6':
    print 'Welcome!'
else:
    print 'Access denied!'
Enter password:ei
Access denied!

if...elif...else...

用于多分支選擇胧瓜,例如:

score = input('Enter the score: ')
if score >= 90:
    grade = 'A'
elif score >= 80:
    grade = 'B'
elif score >= 70:
    grade = 'C'
elif score >= 60:
    grade = 'D'
else:
    grade = 'F'
print 'The grade is:', grade
Enter the score: 89
The grade is: B

循環(huán)語句

循環(huán)語句有兩種形式垒探,分別是有限循環(huán)無限循環(huán)眉撵。有限循環(huán)是指在循環(huán)開始之前即明確地知道循環(huán)多少次后會終止帐要;無限循環(huán)在開始前并不明確指定其循環(huán)次數(shù)把敞,而是通過滿足一定的條件來結(jié)束循環(huán)。

在介紹循環(huán)之前榨惠,首先介紹兩個特別有用的函數(shù)range()xrange()奋早。range()函數(shù)的語法如下:

range([start,] end[, step])

其中start和step可以省略,默認的起始值為0冒冬,步長為1伸蚯,運行結(jié)果是返回一個從startend-1的一個特定步長的列表。xrange()的語法與之類似简烤,但是它并不返回列表剂邮,只是生成一個循環(huán)對象,因此横侦,xrange()可以節(jié)省內(nèi)存挥萌,在循環(huán)中應(yīng)用時速度也更快。

range(5)
[0, 1, 2, 3, 4]
range(3, 9)
[3, 4, 5, 6, 7, 8]
range(3, 9, 2)
[3, 5, 7]

有限循環(huán)(Definite loop)

有限循環(huán)最典型的應(yīng)用就是for循環(huán)枉侧,其語法如下:

for <variable> in xrange(<integer>):
    <statements>

來看一個簡單的例子:

for i in xrange(5):
    print i, 'Hello'
0 Hello
1 Hello
2 Hello
3 Hello
4 Hello

上例即是一個簡單的有限循環(huán)引瀑,它的作用是循環(huán)打印出五次“Hello”。

除了使用range()xrange()函數(shù)之外榨馁,列表憨栽、元組和字典等任何可迭代對象都可以用于有限循環(huán),例如:

names = ['abel', 'bob', 'charles', 'david']
for name in names:
    print name.title()
Abel
Bob
Charles
David
scores = range(60, 100, 10)
grades = dict(zip(names, scores))
print grades
{'abel': 60, 'charles': 80, 'bob': 70, 'david': 90}
for name, grade in grades.iteritems():
    print name.title(), grade
Abel 60
Charles 80
Bob 70

無限循環(huán)

無限循環(huán)是不定次數(shù)的循環(huán),使用while語句來判斷循環(huán)終止條件屑柔,其語法為:

while <condition>:
    <statements>

此外屡萤,也往往配合break語句來跳出循環(huán)。

j = 0
while j < 5:
    print j, 'Hello'
    j += 1
0 Hello
1 Hello
2 Hello
3 Hello
4 Hello
target = 8
guess = 0
while guess != 8:
    guess = raw_input("Enter a number (Enter 'q' to quit): ")
    if guess == 'q':
        print 'Quit.'
        break
    guess = int(guess)
    if guess > 8:
        print 'Too big!'
    elif guess < 8:
        print 'Too small!'
    else:
        print 'Correct!'
Enter a number (Enter 'q' to quit): 2
Too small!
Enter a number (Enter 'q' to quit): 10
Too big!
Enter a number (Enter 'q' to quit): 8
Correct!

返回目錄

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掸宛,一起剝皮案震驚了整個濱河市死陆,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌唧瘾,老刑警劉巖措译,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異饰序,居然都是意外死亡领虹,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進店門菌羽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來掠械,“玉大人,你說我怎么就攤上這事注祖。” “怎么了均唉?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵是晨,是天一觀的道長。 經(jīng)常有香客問我舔箭,道長罩缴,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任层扶,我火速辦了婚禮箫章,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘镜会。我一直安慰自己檬寂,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布戳表。 她就那樣靜靜地躺著桶至,像睡著了一般。 火紅的嫁衣襯著肌膚如雪匾旭。 梳的紋絲不亂的頭發(fā)上镣屹,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天,我揣著相機與錄音价涝,去河邊找鬼女蜈。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的伪窖。 我是一名探鬼主播逸寓,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼惰许!你這毒婦竟也來了席覆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤汹买,失蹤者是張志新(化名)和其女友劉穎佩伤,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晦毙,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡生巡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了见妒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片孤荣。...
    茶點故事閱讀 38,625評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖须揣,靈堂內(nèi)的尸體忽然破棺而出盐股,到底是詐尸還是另有隱情,我是刑警寧澤耻卡,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布疯汁,位于F島的核電站,受9級特大地震影響卵酪,放射性物質(zhì)發(fā)生泄漏幌蚊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一溃卡、第九天 我趴在偏房一處隱蔽的房頂上張望溢豆。 院中可真熱鬧,春花似錦瘸羡、人聲如沸漩仙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽讯赏。三九已至,卻和暖如春冷尉,著一層夾襖步出監(jiān)牢的瞬間漱挎,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工雀哨, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留磕谅,地道東北人私爷。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像膊夹,于是被迫代替她去往敵國和親衬浑。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,492評論 2 348