邏輯運(yùn)算
* 在程序開發(fā)中邻奠,通常 在判斷條件時(shí),會需要同時(shí)判斷多個(gè)條件
*
只有多個(gè)條件都滿足得糜,才能夠執(zhí)行后續(xù)代碼载绿,這個(gè)時(shí)候需要使用到 邏輯運(yùn)算符
*
邏輯運(yùn)算符 可以把 多個(gè)條件 按照 邏輯 進(jìn)行 連接,變成 更復(fù)雜的條件
*
Python 中的 邏輯運(yùn)算符 包括:與 and/或 or/非 not 三種
if 語句進(jìn)階4.1 elif
* 在開發(fā)中辙培,使用 if 可以 判斷條件
*
使用 else 可以處理 條件不成立 的情況
*
但是蔑水,如果希望 再增加一些條件,條件不同扬蕊,需要執(zhí)行的代碼也不同 時(shí)搀别,就可以使用 elif
*
語法格式如下:
if 條件1:
條件1滿足執(zhí)行的代碼
……
elif 條件2:
條件2滿足時(shí),執(zhí)行的代碼
……
elif 條件3:
條件3滿足時(shí)厨相,執(zhí)行的代碼
……
else:
以上條件都不滿足時(shí)领曼,執(zhí)行的代碼
……
*
對比邏輯運(yùn)算符的代碼
if 條件1 and 條件2:
條件1滿足 并且 條件2滿足 執(zhí)行的代碼
……
if 的嵌套elif 的應(yīng)用場景是:同時(shí) 判斷 多個(gè)條件,所有的條件是 平級 的
*
在開發(fā)中蛮穿,使用 if 進(jìn)行條件判斷庶骄,如果希望 在條件成立的執(zhí)行語句中 再 增加條件判斷,就可以使用 if 的嵌套
*
if 的嵌套 的應(yīng)用場景就是:在之前條件滿足的前提下践磅,再增加額外的判斷
*
if 的嵌套 的語法格式单刁,除了縮進(jìn)之外 和之前的沒有區(qū)別
*
語法格式如下:
if 條件 1:
條件 1 滿足執(zhí)行的代碼
……
if 條件 1 基礎(chǔ)上的條件 2:
條件 2 滿足時(shí),執(zhí)行的代碼
……
條件 2 不滿足的處理
else:
條件 2 不滿足時(shí),執(zhí)行的代碼
條件 1 不滿足的處理
else:
條件1 不滿足時(shí)羔飞,執(zhí)行的代碼
……
石頭剪刀布目標(biāo)
1.
強(qiáng)化 多個(gè)條件 的 邏輯運(yùn)算
2.
體會 import 導(dǎo)入模塊(“工具包”)的使用
需求
1.
從控制臺輸入要出的拳 —— 石頭(1)/剪刀(2)/布(3)
2.
電腦 隨機(jī) 出拳 —— 先假定電腦只會出石頭肺樟,完成整體代碼功能
3.
比較勝負(fù)
序號
規(guī)則
1
石頭 勝 剪刀
2
剪刀 勝 布
3
布 勝 石頭
二分法
定義:
二分法是一種快速查找的方法,時(shí)間復(fù)雜度低逻淌,邏輯簡單易懂么伯,總的來說就是不斷的除以2除以2...
例如需要查找有序數(shù)組arr里面的某個(gè)關(guān)鍵字key的位置,那么首先確認(rèn)arr的中位數(shù)或者中點(diǎn)center卡儒,下面分為三種情況:
假如arr[center]>key田柔,說明key在arr中心左邊范圍;
假如arr[center]<key骨望,說明key在arr中心右邊范圍硬爆;
假如arr[center]=key,說明key在arr中心擎鸠。
規(guī)定:
范圍每次縮小一半缀磕,寫個(gè)while的死循環(huán)知道找到為止。
二分法查找非沉庸猓快且非常常用袜蚕,但是唯一要求是要求數(shù)組是有序的
代碼實(shí)現(xiàn):
[圖片上傳失敗...(image-731893-1531469482129)]