一、條件語句
1、什麼是條件語句
Python 條件語句跟其他語言基本一致的,都是通過一條或多條語句的執行結果( True 或者 False )來決定執行的代碼塊。
Python 程序語言指定任何非 0 和非空(null)值爲 True,0 或者 null 爲 False。
2、if 語句的基本形式
Python 中,if 語句的基本形式如下:
if 判斷條件:
執行語句……
else:
執行語句……
Python 語言有着嚴格的縮進要求,因此這裏也需要注意縮進,也不要少寫了冒號 : 。
3、if 語句多個判斷條件的形式
用僞代碼來表示:
if 判斷條件1:
執行語句1……
elif 判斷條件2:
執行語句2……
elif 判斷條件3:
執行語句3……
else:
執行語句4……
4、if 語句多個條件同時判斷
結合 or 和 and 來使用:
- or (或)表示兩個條件有一個成立時判斷條件成功
- and (與)表示只有兩個條件同時成立的情況下,判斷條件才成功。
**注意:**if 有多個條件時可使用括號來區分判斷的先後順序,括號中的判斷優先執行,此外 and 和 or 的優先級低於 >(大於)、<(小於)等判斷符號,即大於和小於在沒有括號的情況下會比與或要優先判斷。
二、循環語句
1、什麼是循環語句
在 Python 中提供了 for 循環和 while 循環。
控制循環的語句:
- break
在語句塊執行過程中終止循環,並且跳出整個循環 - continue
在語句塊執行過程中終止當前循環,跳出該次循環,執行下一次循環 - pass
pass 是空語句,是爲了保持程序結構的完整性
2、 for 循環語句
- 字符串
for letter in 'Hello 兩點水':
print(letter)
結果:
H
e
l
l
o
兩
點
水
3、 range() 函數
for i in range(3):
print(i)
結果:
0
1
2
- 使用 range(x) 函數,就可以生成一個從 0 到 x-1 的整數序列。
- 使用 range(a,b) 函數,你可以生成了一個左閉右開的整數序列。
- 使用 range(0,10,2) 函數, 它的意思是:從 0 數到 10(不取 10 ),每次間隔爲 2 。
4、While 循環語句
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' 計算 1 到 100 所有整數的和 '
__author__ = 'Kevin Gong'
n = 1
sum1 = 0
while n <= 100:
sum1 += n
n += 1
print(sum1)
結果:
5050
5、for 循環和 whlie 循環的區別
什麼時候使用 for 循環和 while 循環呢?
- for 循環主要用在迭代可迭代對象的情況。
- while 循環主要用在需要滿足一定條件爲真,反覆執行的情況。 (死循環+break 退出等情況。)
- 部分情況下,for 循環和 while 循環可以互換使用。
6、嵌套循環
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' 計算 10 到 20 之間的數字分別是什麼數 '
__author__ = 'Kevin Gong'
for num in range(10, 20): # 迭代 10 到 20 之間的數字
for i in range(2, num): # 根據因子迭代
if num % i == 0: # 確定第一個因子
j=num / i # 計算第二個因子
print ('%d 是一個合數' % num)
break # 跳出當前循環
else: # 循環的 else 部分
print ('%d 是一個質數' % num)
結果:
10 是一個合數
11 是一個質數
12 是一個合數
13 是一個質數
14 是一個合數
15 是一個合數
16 是一個合數
17 是一個質數
18 是一個合數
19 是一個質數
三、綜合實例
1. 九九乘法表
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' 打印九九乘法表 '
__author__ = 'Kevin Gong'
for i in range(1, 10):
for j in range(1, i+1):
# 打印語句中,大括號及其裏面的字符 (稱作格式化字段) 將會被 .format() 中的參數替換,注意有個點的
print('{}x{}={}\t'.format(i, j, i * j), end='')
print()
結果:
1x1=1
2x1=2 2x2=4
3x1=3 3x2=6 3x3=9
4x1=4 4x2=8 4x3=12 4x4=16
5x1=5 5x2=10 5x3=15 5x4=20 5x5=25
6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36
7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49
8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64
9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81
2、判斷是否是閏年
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' 閏年 '
__author__ = 'Kevin Gong'
year = int(input("請輸入一個年份: "))
if (year % 4) == 0 and (year % 100) != 0 or (year % 400) == 0:
print('{0} 是閏年' .format(year))
else:
print('{0} 不是閏年' .format(year))
結果:
請輸入一個年份: 2020
2020 是閏年