pythonwhile输出每一个余数_Python 基础 - day02-3
Python 基礎(chǔ) - day02-3
循環(huán)
目標
程序的三大流程
while 循環(huán)基本使用
break 和 continue
while 循環(huán)嵌套
01. 程序的三大流程
在程序開發(fā)中, 一共有三種流程方式:
順序 -- 從上向下, 順序執(zhí)行代碼
分支 -- 根據(jù)條件判斷, 決定執(zhí)行代碼的 分支
循環(huán) -- 讓 特定代碼 重復(fù) 執(zhí)行
02. while 循環(huán)基本使用
循環(huán)的作用就是讓 指定的代碼 重復(fù)的執(zhí)行
while 循環(huán)最常用的應(yīng)用場景就是 讓執(zhí)行的代碼 按照 指定的次數(shù) 重復(fù) 執(zhí)行
需求 -- 打印 5 遍 Hello Python
思考 -- 如果要求打印 100 遍怎么辦?
2.1 while 語句基本語法
初始條件設(shè)置 -- 通常是重復(fù)執(zhí)行的 計數(shù)器
while 條件 (判斷 計數(shù)器 是否達到 目標次數(shù)):
條件滿足時, 做的事情 1
條件滿足時, 做的事情 2
條件滿足時, 做的事情 3
...(省略)...
處理條件 (計數(shù)器 + 1)
注意:
while 語句以及縮進部分是一個 完整的代碼塊
第一個 while 循環(huán)
需求
打印 5 遍 Hello Python# 1. 定義重復(fù)次數(shù)計數(shù)器
i=1
# 2. 使用 while 判斷條件
whilei<=5:
# 要重復(fù)執(zhí)行的代碼
print("Hello Python")
# 處理計數(shù)器 i
i=i+1
print("循環(huán)結(jié)束后的 i = %d"%i)
注意: 循環(huán)結(jié)束后, 之前定義的計數(shù)器條件的數(shù)值是依舊存在的
死循環(huán)
由于程序員的原因, 忘記 在循環(huán)內(nèi)部 修改循環(huán)的判斷條件, 導(dǎo)致循環(huán)持續(xù)執(zhí)行, 程序無法終止!
2.2 賦值運算符
在 Python 中, 使用 = 可以給變量賦值
在算術(shù)運算時, 為了簡化代碼的編寫, Python 還提供了一系列的 與 算術(shù)運算符 對應(yīng)的 賦值運算符
注意: 賦值運算符中間不能使用空格運算符描述實例=簡單的賦值運算符c = a + b 將 a + b 的運算結(jié)果賦值為 c
+=加法賦值運算符c += a 等效于 c = c + a
-=減法賦值運算符c -= a 等效于 c = c - a
*=乘法賦值運算符c= a 等效于 c = c
a
/=除法賦值運算符c /= a 等效于 c = c / a
//=取整除賦值運算符c //= a 等效于 c = c // a
%=取模
(余數(shù)) 賦值運算符c %= a 等效于 c = c % a
**=冪賦值運算符c= a 等效于 c = c
a
2.3 Python 中的計數(shù)方法
常見的計數(shù)方法有兩種, 可以分別稱為:
自然計數(shù)法 (從 1 開始)-- 更符合人類的習慣
程序計數(shù)法 (從 0 開始)-- 幾乎所有的程序語言都選擇從 0 開始計數(shù)
因此, 大家在編寫程序時, 應(yīng)該盡量養(yǎng)成習慣: 除非需求的特殊要求, 否則 循環(huán) 的計數(shù)都從 0 開始
2.4 循環(huán)計算
在程序開發(fā)中, 通常會遇到 利用循環(huán) 重復(fù)計算 的需求
遇到這種需求, 可以:
在 while 上方定義一個變量, 用于 存放最終計算結(jié)果
在循環(huán)體內(nèi)部, 每次循環(huán)都用 最新的計算結(jié)果, 更新 之前定義的變量
需求
計算 0 ~ 100 之間所有數(shù)字的累計求和結(jié)果# 計算 0 ~ 100 之間所有數(shù)字的累計求和結(jié)果
# 0. 定義最終結(jié)果的變量
result=0
# 1. 定義一個整數(shù)的變量記錄循環(huán)的次數(shù)
i=0
# 2. 開始循環(huán)
whilei<=100:
print(i)
# 每一次循環(huán), 都讓 result 這個變量和 i 這個計數(shù)器相加
result+=i
# 處理計數(shù)器
i+=1
print("0~100 之間的數(shù)字求和結(jié)果 = %d"%result)
需求進階
計算 0 ~ 100 之間 所有 偶數(shù) 的累計求和結(jié)果
開發(fā)步驟
編寫循環(huán) 確認 要計算的數(shù)字
添加 結(jié)果 變量, 在循環(huán)內(nèi)部 處理計算結(jié)果# 0. 最終結(jié)果
result=0
# 1. 計數(shù)器
i=0
# 2. 開始循環(huán)
whilei<=100:
# 判斷偶數(shù)
ifi%2==0:
print(i)
result+=i
# 處理計數(shù)器
i+=1
print("0~100 之間偶數(shù)求和結(jié)果 = %d"%result)
03. break 和 continue
break 和 continue 是專門在循環(huán)中使用的關(guān)鍵字
break 某一條件滿足時, 退出循環(huán), 不再執(zhí)行后續(xù)重復(fù)的代碼
continue 某一條件滿足時, 不執(zhí)行后續(xù)重復(fù)的代碼
break 和 continue 只針對 當前所在循環(huán) 有效
3.1 break
在循環(huán)過程中, 如果 某一個條件滿足后, 不 再希望 循環(huán)繼續(xù)執(zhí)行, 可以使用 break 退出循環(huán)i=0
whilei<10:
# break 某一條件滿足時, 退出循環(huán), 不再執(zhí)行后續(xù)重復(fù)的代碼
# i == 3
ifi==3:
break
print(i)
i+=1
print("over")
break 只針對當前所在循環(huán)有效
3.2 continue
在循環(huán)過程中, 如果 某一個條件滿足后, 不 希望 執(zhí)行循環(huán)代碼, 但是又不希望退出循環(huán), 可以使用 continue
也就是: 在整個循環(huán)中, 只有某些條件, 不需要執(zhí)行循環(huán)代碼, 而其他條件都需要執(zhí)行i=0
whilei<10:
# 當 i == 7 時, 不希望執(zhí)行需要重復(fù)執(zhí)行的代碼
ifi==7:
# 在使用 continue 之前, 同樣應(yīng)該修改計數(shù)器
# 否則會出現(xiàn)死循環(huán)
i+=1
continue
# 重復(fù)執(zhí)行的代碼
print(i)
i+=1
需要注意: 使用 continue 時, 條件處理部分的代碼, 需要特別注意, 不小心會出現(xiàn) 死循環(huán)
continue 只針對當前所在循環(huán)有效
04. while 循環(huán)嵌套
4.1 循環(huán)嵌套
while 嵌套就是: while 里面還有 while
while 條件 1:
條件滿足時, 做的事情 1
條件滿足時, 做的事情 2
條件滿足時, 做的事情 3
...(省略)...
while 條件 2:
條件滿足時, 做的事情 1
條件滿足時, 做的事情 2
條件滿足時, 做的事情 3
...(省略)...
處理條件 2
處理條件 1
4.2 循環(huán)嵌套演練 -- 九九乘法表
第 1 步: 用嵌套打印小星星
需求
在控制臺連續(xù)輸出五行 *, 每一行星號的數(shù)量依次遞增*
**
***
****
*****
使用字符串 * 打印# 1. 定義一個計數(shù)器變量, 從數(shù)字 1 開始, 循環(huán)會比較方便
row=1
whilerow<=5:
print("*"*row)
row+=1
第 2 步: 使用循環(huán)嵌套打印小星星
知識點 對 print 函數(shù)的使用做一個增強
在默認情況下, print 函數(shù)輸出內(nèi)容之后, 會自動在內(nèi)容末尾增加換行
如果不希望末尾增加換行, 可以在 print 函數(shù)輸出內(nèi)容的后面增加 , end=""其中"" 中間可以指定 print 函數(shù)輸出內(nèi)容之后, 繼續(xù)希望顯示的內(nèi)容
語法格式如下:# 向控制臺輸出內(nèi)容結(jié)束之后, 不會換行
print("*",end="")
# 單純的換行
print("")
end="" 表示向控制臺輸出內(nèi)容結(jié)束之后, 不會換行
假設(shè) Python 沒有提供 字符串的 * 操作 拼接字符串
需求
在控制臺連續(xù)輸出五行 *, 每一行星號的數(shù)量依次遞增*
**
***
****
*****
開發(fā)步驟
1> 完成 5 行內(nèi)容的簡單輸出
2> 分析每行內(nèi)部的 * 應(yīng)該如何處理?
每行顯示的星星和當前所在的行數(shù)是一致的
嵌套一個小的循環(huán), 專門處理每一行中 列 的星星顯示row=1
whilerow<=5:
# 假設(shè) python 沒有提供字符串 * 操作
# 在循環(huán)內(nèi)部, 再增加一個循環(huán), 實現(xiàn)每一行的 星星 打印
col=1
whilecol<=row:
print("*",end="")
col+=1
# 每一行星號輸出完成后, 再增加一個換行
print("")
row+=1
第 3 步: 九九乘法表
需求 輸出 九九乘法表, 格式如下:1*1=1
1*2=22*2=4
1*3=32*3=63*3=9
1*4=42*4=83*4=124*4=16
1*5=52*5=103*5=154*5=205*5=25
1*6=62*6=123*6=184*6=245*6=306*6=36
1*7=72*7=143*7=214*7=285*7=356*7=427*7=49
1*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=64
1*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81
開發(fā)步驟
打印 9 行小星星*
**
***
****
*****
******
*******
********
*********
將每一個 * 替換成對應(yīng)的行與列相乘# 定義起始行
row=1
# 最大打印 9 行
whilerow<=9:
# 定義起始列
col=1
# 最大打印 row 列
whilecol<=row:
# end = "", 表示輸出結(jié)束后, 不換行
# "\t" 可以在控制臺輸出一個制表符, 協(xié)助在輸出文本時對齊
print("%d * %d = %d"%(col,row,row*col),end="\t")
# 列數(shù) + 1
col+=1
# 一行打印完成的換行
print("")
# 行數(shù) + 1
row+=1
字符串中的轉(zhuǎn)義字符
\t 在控制臺輸出一個 制表符, 協(xié)助在輸出文本時 垂直方向 保持對齊
\n 在控制臺輸出一個 換行符
制表符 的功能是在不使用表格的情況下在 垂直方向 按列對齊文本轉(zhuǎn)義字符描述\\反斜杠符號
\'單引號
\"雙引號
\n換行
\t橫向制表符
\r回車
來源: https://www.cnblogs.com/jiexiaobai/p/12080418.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的pythonwhile输出每一个余数_Python 基础 - day02-3的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS 集成极光推送 (swift版)
- 下一篇: python杀死了excel_Pytho