最新python入門基礎及實戰第三章 if分支與迴圈
python入門基礎三 if分支與迴圈
=============================if 分支結構
if-elif-else
應用場景:針對不同的條件實現不同的操作。(不同的條件之間滿足:如果其中一個條件已經滿足,就沒有再判斷其他條件的必須)
語法:
if 條件語句1:
程式碼段1
elif 條件語句2:
程式碼段2
elif 條件語句3:
程式碼段3
…
else:
程式碼段N
注意: 後面的條件是在前面的條件不成立的前提下進行判斷的
練習:要求根據symbol的符號不同,對num與2進行不同的操作,例如:symbol是’+’ -> num就加2; ‘-’ -> num就減2; '’ -> num2,依次類推
如果symbol不是數學運算給出 ‘不能操作!’ 的提示
symbol = 'hshs'
num = 20
is_operate = True # 當前資料是否已經操作
if symbol == '+':
num += 2
elif symbol == '-':
num -= 2
elif symbol == '*':
num *= 2
elif symbol == '/':
num /= 2
elif symbol == '//':
num //= 2
elif symbol == '%':
num %= 2
elif symbol == '**':
num **= 2
else:
is_operate = False
print('不能操作!')
===================================if巢狀
1. if巢狀
在if語句中有其他的if語句
if 條件語句:
if 條件語句:
程式碼段
else:
程式碼段
else:
程式碼段
練習:如果num是奇數,就列印奇數,否則列印偶數。如果個位數是0,就列印’10的倍數’
num = '5'
if num % 2 == 0:
print('偶數')
if num % 10 == 0:
print('10的倍數')
else:
print('奇數')
2.三目運算子
- C 的三木算符:
表示式1?表示式2:表示式3
- 判斷表示式1的值是否是真,如果為真,則整個運算的結果是表示式2,否則整個運算結果是表示式3
int result = 10>20?30:40
printf(&result)
- python的三目運算子:
表示式2 if 表示式1 else 表示式3
- 判斷表示式1的值是否為True,如果為True,則整個運算的結果是表示式2,否則整個運算結果是表示式3
result = 30 if 100>20 else 40
print(result)
練習:根據年齡值列印成年或者未成年(用三目運算子完成)
age = 19
print('成年' if age>18 else '未成年')
=================================for 迴圈
迴圈的作用: 讓程式碼重複執行
for迴圈
- 語法:
for 變數 in 序列:
迴圈體
說明:
- for - 關鍵字;固定寫法
- 變數 - 和定義變數的時候變數名的要求和規範一樣;(如果這個變數在迴圈體中不使用,變數名可以用_代替)
- in - 關鍵字;固定寫法
- 序列 - python中容器型資料型別,例如:字串、列表、元組、集合、字典、迭代器、生成器、range等…
- : - 固定寫法
- 迴圈體 - 和for保持一個縮排的一條或者多條語句;需要重複執行的程式碼
執行過程:
讓變數去序列中取值,一個一個的取,取完為止,每取一個值就執行一次迴圈體。
(for迴圈的執行次數,看序列中元素的個數)
for x in 'abc':
print(x, 'hello world!')
2. range函式 - 產生指定範圍的數字序列
range(N) - 產生一個[0, N) 的數字序列(N是正整數);例如:range(4) - 產生 0、1、2、3 的數字序列
range(M, N) - 產生一個[M, N) 的數字序列(M<N,並且M和N是整數);例如:range(-3, 3) - 產生: -3、-2、-1、0、1、2
range(M, N, step) - 產生一個[M, N)的數字序列,每次數值增加step;例如:range(-3, 3, 2) - 產生:-3、-1、1
- 應用:列印100行 ‘hello world!’
for _ in range(100):
print('HELLO WORLD!')
for x in range(4): #列印出0-3的數字
print('x1:', x)
- 練習2
for x in range(-3, 3):
print('x2:', x)
for x in range(-3, 3, 2):
print('x3:', x)
for x in range(100, 49, -1):
print('x4:', x)
練習1: 計算1+2+3+4+…+100的和
sum1 = 0
for x in range(1, 101):
sum1 += x
print('和:', sum1)
- 執行過程解析:
sum1 = 0
(x -> 1 ~ 100)
x = 1: sum1 += x -> sum1 = sum1 + x -> sum1 = 0 + 1 = 1
x = 2: sum1 += x -> sum1 = sum1 + x -> sum1 = 1 + 2
x = 3: sum1 += x -> sum1 = sum1 + x -> sum1 = 1+2 + 3
x = 4: sum1 = 1+2+3+4
…
x = 100: sum1 = 1+2+3+4+…+ 100print(sum1) -> print(5050)
練習2:統計1000以內能夠被3整除的數的個數
方法一:
count = 0 # 儲存最終的個數
for x in range(1000):
if x % 3 == 0:
count += 1
print('個數:', count)
方法二:
count = 0
for x in range(0, 1000, 3):
count += 1
print('個數:', count)
練習3:列印1000以內能夠被3整除並且個位數是2的所有的數
方法一:
for x in range(1000):
if x % 3 == 0 and x % 10 == 2:
print(x, end=' ')
print()
方法二:先生成1000以內所有3的倍數,然後再看3的倍數中誰的個位數是2
for x in range(0, 1000, 3):
if x % 10 == 2:
print(x, end=' ')
print()
方法三:先生成1000以內所有個位數是2的數,然後再看個位數是2的數中誰可以被3整除
for x in range(2, 1000, 10):
if x % 3 == 0:
print(x, end=' ')
print()
=================================while迴圈
1.while迴圈
語法:
while 條件語句:
迴圈體
- 說明:
1)while - 關鍵字;固定寫法
2)條件語句 - 任何有結果的表示式都可以(賦值語句不行)
3): - 固定寫法
4)迴圈體 - 和while保持一個縮排的一條或者多條語句;需要重複執行的程式碼
- 執行過程:
先判斷條件語句是否為True, 如果是就執行迴圈體,執行完再判斷條件語句是否為True;
為True又執行迴圈體,執行完再判斷條件語句是否為True …
以此類推, 如果條件語句的結果是False迴圈就結束
- 練習:列印5次 ‘hello world!’
x = 0
while x < 5:
print('hello world!')
x += 1
執行過程:
x = 0
while 0 < 5: print(‘hello world!’); x += 1 -> x = 0+1 = 1
while 1 < 5: print(‘hello world!’); x += 1 -> x = 1+1 = 2
while 2 < 5: print(‘hello world!’); x += 1 -> x = 2+1 = 3
while 3 < 5: print(‘hello world!’); x += 1 -> x = 3+1 = 4
while 4 < 5: print(‘hello world!’); x += 1 -> x = 4+1 = 5
while 5 < 5: 迴圈結束!
2.for迴圈和while迴圈的選擇
如果迴圈次數確定的就使用for迴圈; 如果迴圈次數不確定就使用while迴圈
練習:寫程式讓客戶不斷輸入內容,直到輸入的內容是0為止
思路解析:
我們需要不斷輸入數字,而輸入的數字不確定,程式碼需要位置次數重複執行,如:
請輸入:2
請輸入:a
請輸入: acc
請輸入: 0
數字是0,結束迴圈
num = 'start'
while num !='0':
num = input('請輸入:')
相關文章
- javascript快速入門3--分支判斷與迴圈JavaScript
- Go 基礎知識之分支迴圈Go
- Go語言入門教程系列——函式、迴圈與分支Go函式
- python 基礎 迴圈Python
- python分支結構與迴圈結構Python
- Python 分支、迴圈、條件與列舉Python
- 實驗2_C語言分支與迴圈基礎應用程式設計C語言程式設計
- 實驗2 c語言分支與迴圈基礎應用程式設計1C語言程式設計
- 實驗2 C語言分支與迴圈基礎應用程式設計-1C語言程式設計
- 實驗2C語言分支與迴圈基礎應用程式設計C語言程式設計
- Python基礎(07):迴圈Python
- 【Python基礎】for迴圈語句Python
- Python基礎教程06 - 迴圈Python
- python 基礎習題6--for迴圈和while迴圈PythonWhile
- Vue 分支迴圈Vue
- 最新python3完全零基礎入門(目前最新)Python
- Python基礎-While迴圈語句PythonWhile
- Python基礎學習之迴圈Python
- python基礎 while迴圈練習PythonWhile
- 【基礎題】【for迴圈】二重迴圈
- 【廖雪峰python入門筆記】for迴圈Python筆記
- Python基礎:條件判斷 & 迴圈Python
- Python 快速教程(基礎篇06): 迴圈Python
- python入門,程式設計基礎概念介紹(變數,條件,函式,迴圈)Python程式設計變數函式
- Scala學習 1.1 Scala基礎與語法入門實戰
- Nginx入門到實戰(1)基礎篇Nginx
- Python中for迴圈和while迴圈有什麼區別?Python入門教程PythonWhile
- 基礎迴圈+識圖
- JAVASE-Basic(基礎資料+運算子+分支/迴圈結構+陣列)Java陣列
- 條件分支與迴圈結構學習
- Python趣味入門5:迴圈語句whilePythonWhile
- 【廖雪峰python入門筆記】while迴圈Python筆記While
- 【廖雪峰python入門筆記】多重迴圈Python筆記
- 3. Python中的分支判斷、迴圈Python
- Python開發【第三篇】:分支迴圈Python
- 《Java從入門到失業》第三章:基礎語法及基本程式結構(3.8):流程控制(迴圈語句、while語句、for語句)JavaWhile
- java基礎(三) 加強型for迴圈與IteratorJava
- 豬行天下之Python基礎——4.1 條件判斷與迴圈Python