一文詳解python循環(huán)_第1頁
一文詳解python循環(huán)_第2頁
一文詳解python循環(huán)_第3頁
一文詳解python循環(huán)_第4頁
一文詳解python循環(huán)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第第頁一文詳解python循環(huán)

哈嘍,大家好,我是了不起。

今天給大家?guī)恚╬ython)循環(huán)

一、while循環(huán)

如果條件成立(true),重復執(zhí)行相同操作,條件不符合,跳出循環(huán)

while循環(huán)條件:

循環(huán)操作

(1)while循環(huán)示例

例:輸入王曉明5門課程的考試成績,計算平均成績

1i=1#初始化循環(huán)計數(shù)器i2sum=0#初始化總成績變量3whilei(2)嵌套while循環(huán)示例

外部循環(huán)滿足條件后,執(zhí)行代碼開始執(zhí)行內(nèi)部循環(huán),等內(nèi)部循環(huán)全部執(zhí)行完畢,如果還滿足外部循環(huán)條件,則外部循環(huán)再次執(zhí)行,依次類推,直到跳出外層循環(huán)。

例:分別輸入兩個學生的5門成績,并分別計算平均成績

1j=1#定義外部循環(huán)計數(shù)器初始值2prompt='請輸入學生姓名'#定義字符串變量,在用戶輸入時調(diào)用此變量可以減少敲漢字的麻煩3whilej二、f(or)循環(huán)

(1)使用for語句可以遍歷全部元素,例如逐個輸出字符串中的字符,逐個輸出列表中的元素,元組中的元素,集合中的元素(注意賦值時各元素的順序),字典中的鍵……

forlet(te)rin'Python':printletter結(jié)果:Pythonfruits=['西瓜','水蜜桃','葡萄']forfruitinfruits:printfruit結(jié)果:西瓜水蜜桃葡萄(2)重復執(zhí)行相同操作

使用range()函數(shù)創(chuàng)建一個數(shù)字列表

取值范圍:從起始數(shù)字開始到結(jié)束數(shù)字之前

1foriinrange(0,5):#依次把0到4保存在變量i中2print'Mr.Mangood最酷!'34結(jié)果:5Mr.Mangood最酷!6Mr.Mangood最酷!7Mr.Mangood最酷!8Mr.Mangood最酷!9Mr.Mangood最酷!輸入王曉明的三門考試成績,并算出平均值

1(sub)jects=('(linux)系統(tǒng)','Mysql數(shù)據(jù)庫','Python語言')#定義一個元組,三個元素代表三門課程2sum=0#定義變量num為初始化成績分數(shù)3foriinsubjects:#把元組里的每一個元素依次賦值給i,一共有三次4print'請輸入%s的考試成績'%i#提示輸入成績,運用了格式化字符串功能,用i每次取得的元素名表達出成績名字,%s的意思是字符串5score=input()#接收用戶輸入的成績賦值給score6sum+=score#把成績賦給sum,相當于sum=sum+score7avg=sum/len(subjects)#跳出for循環(huán)后,計算平均值,這里用函數(shù)len()來計算變量subjects的長度,因為subjects定義為一個元組,因此長度即為元素個數(shù)38print'王曉明的平均成績?yōu)?d'%avg#輸出平均成績910結(jié)果:11請輸入linux系統(tǒng)的考試成績128713請輸入Mysql數(shù)據(jù)庫的考試成績147815請輸入Python語言的考試成績169017王曉明的平均成績?yōu)?5(3)嵌套for循環(huán)

輸入黃曉鳴、楊影2位同學,每人三門課程的考試成績,計算平均成績

1student=(23'黃曉鳴','楊影')#定義學生姓名的元組2subjects=('linux系統(tǒng)','Mysql數(shù)據(jù)庫','Python語言')#定義課程名字的元組3forjinstudent:#把j依次取兩名學生的值進行兩次循環(huán)4sum=0#初始化成績的值5print'%s同學的考試成績'%j#打印出標題6foriinsubjects:#定義課程循環(huán)7print'請輸入%s的考試成績'%i#提示輸入其中一名學生的考試成績8score=input()#接收考試成績賦值給score9ifscore100:#判斷分數(shù)取值范圍,做提醒10print'注意成績大小'11sum+=score#每次輸入成績后,sum值都累加12avg=sum/len(subjects)#求出平均成績13printj,'的平均成績是%dn'%avg#打印平均成績14print'完成學生成績錄入工作'#提示完成工作三、循環(huán)控制

循環(huán)控制語句可以改變循環(huán)正常的執(zhí)行順序

循環(huán)控制語句

break語句:跳出本次循環(huán)(嵌套循環(huán)中只跳出一層循環(huán))

con(ti)nue語句:跳過當前一輪循環(huán)體的剩余語句,重新測試循環(huán)狀態(tài),進入下一輪循環(huán),比如循環(huán)的次數(shù)一共有5次,第四次遇到continue了,那么不繼續(xù)執(zhí)行了,直接進行第5次循環(huán)判斷

四、循環(huán)控制綜合案例

1、需求分析

顯示菜單

(N)ewUserLogin

(E)nteringUserLogin

(Q)uit

Entercho(ic)e:

注:輸入字母N,接收新的登錄名和密碼,保存在字典中

輸入字母E,接收登錄名、密碼、查找、匹配用戶輸入是否正確

輸入字母Q,退出

2、執(zhí)行步驟

(1)編制菜單

(2)使用while語句實現(xiàn)菜單項選擇-外層循環(huán)

(3)使用while語句接收新的登錄名-內(nèi)層循環(huán)

(4)使用if語句判斷菜單,執(zhí)行相關(guān)操作

3、代碼架構(gòu)圖

img

4、具體代碼

db={}prompt='''(N)ewuserlogin(E)nteringuserlogin(Q)uitEnterchoice:'''whileTrue:choice=raw_input(prompt).strip()[0].lower()#讀取控制臺輸入的字符串,去除其首尾多余的空格后,將第一個字符串轉(zhuǎn)換為小寫字母print'n--You(pi)cked:[%s]'%choiceifchoicenotin'neq':print'--inv(ai)ldoption:,tryagain--'else:ifchoice=='n':prompt1='--logindesired:'whileTrue:name=raw_input(prompt1)ifdb.has_key(name):#判斷字典里的鍵值是否已經(jīng)有輸入的name值,如果有的話觸發(fā)continue重新執(zhí)行while循環(huán),因為觸發(fā)continue前prompt1被重新定義了,所以執(zhí)行了新的name=raw_input(prompt1)prompt1='--nametaken,tryanother:'continueelse:breakpwd=raw_input('password:')#驗證字典中的鍵沒有輸入的name值后,跳出循環(huán),把用戶輸入的密碼賦值給pwddb[name]=pwd#把值傳給字典db中的name鍵實現(xiàn)字典數(shù)據(jù)的完善elifchoice=='e':

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論